Strona 1 z 2
[+] C - zapis float/double do pliku przecinek zamiast kropki
: 12 kwietnia 2007, 19:28
autor: slomek
Pisze program, który zapisuje liczby typu double do pliku.
Po odpaleniu czesc calkowita od ulamka oddzielona jest przecinkiem, a wiekszosc programow (w tym programy napisane w C) zakładają, że powinna być to kropka.
Podejrzewam, że to kwestia lokalizacji systemu.
Jak to zmienić?
: 12 kwietnia 2007, 19:33
autor: mlyczek
slomek pisze:programy napisane w C) zakładają, że powinna być to kropka.
a w czym Ty piszesz ten program?
: 12 kwietnia 2007, 19:37
autor: slomek
C. Kompilator gcc 4.1.2
: 12 kwietnia 2007, 19:39
autor: mlyczek
No to skoro programy w C oczekują, że zmienne double będą z kropką, a Ty piszesz w C, to dlaczego te liczby w pliku zapisywane są z przecinkiem?
: 12 kwietnia 2007, 19:43
autor: velmafia
mlyczek pisze:No to skoro programy w C oczekują, że zmienne double będą z kropką, a Ty piszesz w C, to dlaczego te liczby w pliku zapisywane są z przecinkiem?
chyba właśnie o rozwiązanie tego chodziło dla autora tego tematu
: 12 kwietnia 2007, 19:57
autor: slomek
chyba właśnie o rozwiązanie tego chodziło dla autora tego tematu ;]
W rzeczy samej
Ciekawe, że program zapisujacy do pliku liczby zmiennoprzecinkowe, a później z niego czytający sypie się :-P
: 12 kwietnia 2007, 20:01
autor: Kaka'
Możesz pokazać treść programu? (znaczy się, kod) - no chyba, że jakiś długi, bardzo długi napisałeś
.
: 12 kwietnia 2007, 20:08
autor: slomek
To jest dłuuuuuuuuuuuuuugi program- korzysta z OpenCV i GSL.
Sam zapis jest tradycyjny i banalny:
Kod: Zaznacz cały
fprintf(plik,"%f",liczba_zmiennoprzecinkowa);
: 12 kwietnia 2007, 20:13
autor: mlyczek
A odczyt jakim polceniem robisz?
: 12 kwietnia 2007, 20:18
autor: slomek
Tylko nie chodzi mi o ten odczyt. Bardziej boli problem z odczytem pliku z przecinkami przez programy typu Matlab, gnuplot itp.