che sto cercando di capire la differenza tra l'apertura di un file, come:Qual è la differenza tra l'apertura di un file con ios :: binary o ios :: out o entrambi?
fstream *fileName*("FILE.dat",ios::binary);
o
fstream *fileName*("FILE.dat",ios::out);
o
fstream *fileName*("FILE.dat",ios::binary | ios::out);
ho scoperto che tutte queste forme sono identiche: in tutti i casi, lo stesso output sul file viene prodotto utilizzando *fileName*<<
o *fileName*.write()
.
e cosa significa usare entrambi? –
Beh, scriveresti su un file senza tradurre alcun personaggio. –
Quindi, se non contrassegno un ifstream come binario, e leggo, diciamo 10 doppi da esso, e Windows trova un '\ n' casuale nei dati, quindi lo stream viene espanso da '10 * sizeof (double)' a '10 * sizeof (double) + 1' come' \ r' è inserito, e sovrascrive quindi la fine del mio doppio buffer? – user14717