Fgets

di Anonimizzato15669 il
18 risposte

18 Risposte - Pagina 2

  • Vim su linux
  • Vim è un editor, probabilmente usi gcc per compilare.

    La fflush(stdin) funziona solo con il compilatore Microsoft su Windows. Al suo posto utilizza la linea

    while( getchar( ) != '\n' ) ;
  • Grazie!! Adesso funziona. Non so se ho capito bene, ma il motivo che ha provocato l'errore dovuto da scanf è dal fatto che mette in automatico alla fine di ogni stringa uno \n ??
  • No!
    la scanf nel tuo caso prelevano un numero e li termina di inserire il valore nella variabile, ma l'input termina solo con l enter e quindi tutto ció che scriverai dopo il numero andrà nel buffer di sistema.
    Il ciclo proposto ripulisce il buffer.sarebbe meglio metterci un controllo anche sulla eof
Devi accedere o registrarti per scrivere nel forum
18 risposte