我的客戶端應用程序通過使用writeln和readln的文本文件輸出和輸入相當多的real類型變量。我試着寫增加字段的寬度,使代碼看起來像:再次進出口Delphi通過writeln/readln實現的精度
writeln(file, exportRealvalue:30); //using excess width of field
....
readln(file, importRealvalue);
當我導出,然後和比較的文件,我得到的最後兩位數字,如差異(可能是關上的數字在這裏的實際數量,但你得到它):
-1.23456789012E-0002
-1.23456789034E-0002
這實際上使得在應用程序的不同,因此客戶想知道什麼我可以做些什麼。現在我不確定這是否只是寫/讀,但我認爲在我再次深入嘿堆棧之前,我會提出一個簡單的問題。我需要對此進行二元化嗎?
這不是一個處理貨幣或應用程序的應用程序,我只是在文件中寫入和讀取值。我知道浮點有時有點奇怪,我認爲其中一個例程(writeln/readln)可能會有一些有趣的事情在進行。
浮點數有四捨五入的問題。它是什麼類型的應用程序,財務,科學等? 查看此線程以獲取更多信息:http://stackoverflow.com/questions/149033/best-way-to-store-currency-values-in-c – stukelly 2008-09-29 18:49:46