Sto leggendo da file e ho un piccolo disguido. Leggendo carattere per carattere con l'istruzione:
char c;
ifstram input(...);
input>>c;
Il fatto è che non legge gli spazi. Come posso fare?
Sto leggendo da file e ho un piccolo disguido. Leggendo carattere per carattere con l'istruzione:
char c;
ifstram input(...);
input>>c;
Il fatto è che non legge gli spazi. Come posso fare?
Usa la funzione ifstream::read.
Amaro C++, il gusto pieno dell'undefined behavior.
prova leggere con getc() fino al carattere '\n'
Leggi con la "cin >> " quella prende anche gli spazi.
Ho provato con questa ma non va,scusate la mia ignoranza:
while(!input.eof ())
{
char* c=0;
input.read (c,1);
cout<<c;
}
Dove sbaglio?
Non va => cioé?
Amaro C++, il gusto pieno dell'undefined behavior.
Ho utilizzato la funzione get e funziona...
Con la funzione read come l'ho scritta sopra, mi da un runtime-error. Forse dipende dall'ambiente. Cmq programmo con Visual Studio 2005.
Per forza ti dà un errore! In quel codice assegni dei dati ad un puntatore non inizializzato!
:rollo:codice:while(!input.eof ()) { char c=0; input.read (*c,1); cout<<c; }
Amaro C++, il gusto pieno dell'undefined behavior.
Si è vero!!! Che errore...