Nei titoli e nei testi troverete qualche rimando cinematografico (ebbene si, sono un cinefilo). Se non vi interessano fate finta di non vederli, già che non sono fondamentali per la comprensione dei post...

Di questo blog ho mandato avanti, fino a Settembre 2018, anche una versione in Spagnolo. Potete trovarla su El arte de la programación en C. Buona lettura.

lunedì 13 agosto 2012

Mamma, ho perso l'atoi()

Vorrei proporvi un piccolo test: aprite un editor e, senza consultare google, manuali, o programmi archiviati, scrivete una funzione atoi(). Non vi spiego cos'è, perché se il nome non vi suona avete già fallito il test. Nel caso che la memoria non vi abbia tradito, dovreste scrivere un piccolo main() che richiami la vostra funzione passandogli un parametro fisso e, ad esempio, scriva a video il risultato. Non perdete tempo a fare un programma interattivo che gestisca l'input: l'obiettivo è solo scrivere una atoi() funzionante.

Bene, se ci avete messo più di 5 minuti (vabbeh, sarò generoso: 10 minuti), allora avete bisogno di una sana rinfrescata delle basi del C. Non sorprendetevi, magari uno usa il C spesso, magari scrive anche cose complicate, però, grazie al cut&paste di codice scritto precedentemente, oppure di esempi trovati in rete (grazie google !) è possibile che uno, alla lunga, si dimentichi di come si fanno le cose semplici.

Nessuno di quelli che non c'è l'hanno fatta si offenda: siete in buona compagnia. Perché pensate che vi sto proponendo proprio questo test? Beh, alcuni anni fa, mi hanno dato un foglio e una penna (ancora più difficile! Neanche un PC con un compilatore per provare) e mi hanno detto "Scrivi una atoi()". L'ho scritta e l'ho sbagliata clamorosamente. La sera stessa ho tirato fuori dalla libreria il K&R e ho cominciato a rileggerlo, dalla prima all'ultima pagina (erano molti, molti, molti anni che non lo rileggevo interamente): è stata una gran sorpresa, c'erano argomenti che non ricordavo neanche che venivano trattati, e ho riscoperto parti dimenticate del C che per (cattiva) abitudine non usavo da anni.

Ora che ho preso l'abitudine di rinfrescarmi la memoria periodicamente, il test non lo sbaglio più. Ehm, ovviamente prima di scrivere questo post mi sono obbligato a fare un test a sorpresa dell'atoi(), e, fidatevi, questa volta c'è l'ho fatta (del resto, se non ci fossi riuscito, non avrei avuto il coraggio di scrivere questo post...).

Ciao e al prossimo post.

4 commenti:

  1. Post molto interessante...

    RispondiElimina
  2. Divertente e ... profondamente vera!
    Dopo anni di assenza dal mondo C ho fatto un test online su un sito e l'ho cannato in pieno. Che shock! Mi sa che devo riprendere il K&R anche io...

    RispondiElimina
    Risposte
    1. Grazie Paola.
      NDR: Paola è una mia ex-collega e Gran Programmatrice: per lei sarà sufficiente un'occhiata rapida al K&R...

      Elimina
  3. Ahahaha!!! Gran Programmatrice è un titolo del tipo Gran Mogol? Mi vedo già con turbante in testa... comunque purtroppo in questo periodo sto facendo di tutto tranne che programmare in C, eppure devo dirti che ti leggo proprio volentieri! Complimenti, continua così :-)
    Ciao
    Paola

    RispondiElimina