Divertirsi con il manuale di C

Scritto da Lutz!

Da Linguaggio  C
Brian W. Kernighan
Dennis M. Ritchie
Jackson Libri


Alcune chicche raccolte (e commentate tra parentesi) da Lutz! 
dalle quali è deducibile la personalità dei due scrittori di 
questo linguaggio....
Prima della frase indico la pagina, della versione italiana.
Buon divertimento!

--------

XIII : La nostra esperienza personale ci ha insegnato che il C è un linguaggio piacevole, 
	espressivo e versatile. (evidentemente lo avete usato poco).

XVI: Vorreste dire che per confrontare due stringhe di caratteri è necessario chiamare 
	esplicitamente una funzione?!? (SI).

XVIII: Il C assume che il programmatore sappia cosa sta facendo. (perchè il Pascal no?)

XVIII: Il C come qualsiasi altro liguaggio ha i propri difetti. (ma proprio pochi...)

XVIII: ....non vengono spiegati i concetti di... nè il significato di espressioni come n=n+1. (azz!)

2: Il primo programma da scrivere è lo stesso per tutti i linguaggi. (perchè?).

2: Su altri sistemi le regole saranno differenti: Chiedete a un esperto. (no comment)

9: Il problema principale, invece, è dato dal fatto che abbiamo usato l'artimetica fra interi, 
   e di conseguenza, le temperature Celsius risultano poco accurate. (bravi furbi!).

25: Per motivi di chiarezza è meglio che questo costrutto venga formattato nel modo illlustrato 
    nel programma, se ogni if fosse indentato rispetto all'else precedente, una lunga sequenza di 
    alternative sconfinerebbe oltre il margine della pagina. (per la chiarezza, APPUNTO).

38: Dovreste notare che stiamo usando con molta attenzione i termini definizione e dichiarazione. (Se no?).

42: In questo libro tendiamo ad usare nomi brevi per le variabili locali, e nomi più lunghi 
    per le variabili esterne. (e allora?).

45: Un'espressione costante è una espressione costituita da soli costanti. (grazie!).

69: L'indentazione mostra inequivocabilmente ciò che volete che avvenga, ma il compilatore non 
    rileva le vostre intenzioni. (Ma l'avete fatto voi!!!)

80: Il C fornisce l'abusata istruzione GOTO.

81: In questo libro non abbiamo mai usato il GOTO.

81: Qualsiasi segmento di codice contenente un GOTO può sempre essere scritto anche senza di esso.

82: Il codice che comprende dei GOTO è meno comprensibile e più difficilmente manutenibile di 
    quello che ne è primo. Pur non volendo essere dogmatici, a questo proposito, consigliamo 
    di usare i goto con attenzione e se possibile evitarli del tutto 
    (Gli stava proprio sulle scatole sto GOTO!).

97: Cosa sono getch e ungetch?

117: I puntatori sono stati spesso accumunati all'istruzione GOTO per la loro supposta capacità 
     di generare programmi incomprensibili. (E continua la guerra ai GOTO!).

125: Ancora più sorprendente è il fatto che un riferimento ad a[i] può essere scrito nella 
     forma *(a+i).

188: A parte i motivi puramente estetici, sono due le ragioni che rendono auspicabile 
     l'impiego di typedef.

195. Le funzionalità di Input e Output non fanno parte del linguaggio C, per questo motivo, 
     non le abbiamo sottolineate in modo particolare.

232: Purtroppo il formato e i contenuti di una directory non sono gli stessi su tutte le 
     versioni del sistema.

247: Questo manuale descrive il linguaggio C. (notare che bisognava arrivare a pagina 
     247 per farlo sapere al lettore).

260: Il comitato ANSI ha deciso, in una fase avanzata dei lavori, di limitare la libertà di 
     riordinamento delle espressioni che coinvolgono operatori.

282: Le enumerazioni sono una novità rispetto alla prima edizione di questo libro anche 
     se fanno parte del linguaggio gia da alcuni anni. (vendevate libri alluvionati?)

346: Una modifica banale, desiderata da tutti, 8 e 9 non sono cifre ottali.

347: Per simmetria con l'operatore unario - è stato inserito l'operatore +.