002
26.04.2004, 22:50 Uhr
icharno
|
ich kenne mich mit den c++-streams nicht aus, aber verlust von genauigkeit nur dann, wenn der numerische Wert in eine Zeichenkette gewandelt wird. auch nur hier hat precision eine Wirkung. zudem sind 40 Nachkommastellen nicht sinnvoll die Mantisse hat 21 bit ( in etwa ) das sind keine 15 Nachkommastellen im Dezimalsystem
wenn man double 32bit als binaeren Wert in eine Datei schreibt
write() mit filedescriptoren fd write( fd,(char*)d,sizeof(double) );
oder fwrite mit FILE* ( Binaermodus : fopen( path, "ba" ) ) fwrite( (char*)d,sizeof(double),1,F ); 2. und 3. Arg tauschen ? kann ich mir nicht merken
geht nichts verloren. und man spart platz: 4Byte gegen 40Byte fuer die Nachkommastellen |