Sky, ti sbagli
l'ho provato e ho trovato interessante vedere come anche un programma come questo possa far ragionare e possa nascondere delle insidie e delle sorprese...
All'inizio ci sono cascato e mi sono detto che avevi ragione, ma poi mi sono detto... ma scusa, visto che il getchar non torna fino a quando premi invio, per forza uno dei caratteri deve essere \n ovvero l'invio... quindi il ciclo DOVEVA FINIRE... perchè non finisce?? perchè non esce alla prima riga inserita?
Perchè EOF NON E' l'INVIO, è End Of File...
e che cacchio è End Of File?? qui ho tirato fuori i miei antichi ricordi dell'MS-DOS
a quei tempi quando creavi un file dal prompt col comando:
copy con nomefile.txt
e poi cominciavi a scrivere qualcosa, poi per dirgli che avevi finito di creare il file (EOF)
dovevi premere insieme i tasti CTRL-Z
cosi mi sono detto, vuoi vedere che è quello?
provate un po' per credere
con CTRL-Z il programma si chiude
PS: non ho controllato, ma penso che il senso di sto programma sul libro sia PROPRIO quello di contare le righe che hai scritto, sai Sky? (del resto immagino che la variabile nl stia per New Line)