PDA

Visualizza la versione completa : [C/C++]: Significato di while (!getchar=='\n')


arienuccia
24-06-2006, 20:33
salve!
sapreste spiegarmi l'utilità in questa procedura

void estrai(){

struct libro buflib;
if (vuoto())
printf("\n\tLa pila e' vuota: estrazione impossibile!");
else
buflib= pop();
puts(buflib.titolo);
puts(buflib.autore);
puts(buflib.editore);
printf("\n%ld", buflib.prezzo);
fflush(stdin);


while(!getchar=='\n'); }

dell'istruzione in rosso???

Rik142
24-06-2006, 20:39
Fino a quando non premi invio ciò che stai digitando non viene mostrato in output.
Credo si legga così!!

oregon
24-06-2006, 21:28
Meglio ... il programma non prosegue finche' non si pressa return ...

U-bahn
25-06-2006, 12:46
così com'è non ha alcuna utilità (getchar risulta sempre vera...ed il test risulta sempre falso, quindi il ciclo while non viene eseguito)...
scritta correttamente fa in modo che eventuali altri caratteri prima del 'new line'
non interferiscano con eventuali successive chiamate a funzioni come getchar(),scanf(), etc..


while(!(getchar() == '\n'));

:ciauz:

Loading