27/05/11 6:25
Premoli
Ciao a tutti!!
Ho la necessità di leggere EOF da stdin, però non riesco a capire una cosa, faccio un esempio per spiegarmi meglio.
#include <stdio.h>
int main()
{
char c;
while(c!=EOF){
c=fscanf(stdin, "%c", &c);
}
return 0;
}
Non riesco a capire perché se con questo codice scrivo ciaoCTRL+z non si blocca immediatamente ma per bloccarsi mi "costringe" ad inserire nuovamente CTRL+z, mentre se prima di premere CTRL+z premo invio si blocca subito?
Spero di essermi spiegato bene, e grazie a tutti anticipatamente...
Ultima modifica effettuata da Premoli 27/05/11 6:26
aaa
27/05/11 12:56
Premoli
Ciao grazie per la risposta, però non ho capito cosa intendi...
O meglio ok EOF non ci sta in un char, e mi hai consigliato di usare un int, il problema è che io devo acquisire un char...Probabilmente non ho capito bene... Potresti fare un esempio?
aaa
27/05/11 16:03
TheKaneB
l'End Of File è il CTRL-D non il CTRL-Z
aaa
27/05/11 16:08
Premoli
niente, anzi con il CTRL-D non termina proprio...
Boh è strano come fatto però, non capisco perché se prima del CTRL-z premo invio allora poi tutto funziona correttamente...
aaa