PDA

Visualizza la versione completa : [C] fgets e fscanf


{-_-}
19-01-2008, 16:49
la fscanf e la fgets mettono entrmbe il terminatore di linea nel vettore?

perchè avevo letto che fgets sostituiva il terminatore di linea con un \0 ma in realtà non è così.

voi che dite?

oregon
19-01-2008, 17:45
Originariamente inviato da {-_-}
perchè avevo letto che fgets sostituiva il terminatore di linea con un \0 ma in realtà non è così.

Cosa ti fa pensare il contrario ?

{-_-}
19-01-2008, 18:08
stavo implemendando un programam che legge le righe di un file di testo e le mette in un vettore per poi elaborarle, ma il punto è che se faccio la strlen di quelle stringhe mi da un carattere in più.
Inoltre se stampo quei vettori va a capo nella visualizzazione. Da qui ho dedotto che la fgets a contrario di quanto avevo letto inseisce \n nel vettore.

non ci capisco più niente, in internet trovo o informazioni incoplete o contraddittorie. per questo chiedo a voi come stanno le cose.

oregon
19-01-2008, 20:09
Nella stringa viene incluso il carattere LF (Line Feed, 0x0a) ...

{-_-}
19-01-2008, 20:51
invece per quanto riguarda la fscanf so che si ferma al carattere ti spazio ' ' , però non so cosa faccia con \n , lo include o no?

grazie

Loading