的分配和產值我很新的節目,所以,如果我不使用精確的術語來表達,請原諒..差在雙
我在不同的嘗試輸出的雙重價值值,但當我試圖做下面的值改變任何人都可以解釋爲什麼會發生這種情況。
在程序中,
int main()
{
// double i=555555.555555; //--------------------------------(A)
// double i=5555555555555555.555555; //--------------------------------(B)
// double i=555555555555555.555555; //--------------------------------(C)
printf("%f",i);
printf("\n%lf",i);
return 0;
}
輸出爲
line (A):
555555.555555
555555.555555
line (B):
555555555555555.560000
555555555555555.560000
line (C):
5555555555555556.000000
5555555555555556.000000
在上文中,如果我線(A)編譯,我會得到一個正確的輸出。但是,如果我嘗試行(B)和(C),輸出會變化,並且在行(C)中,值id完全更改。
請幫我這混亂..
在此先感謝..
剛纔看了這樣的:http://floating-point-gui.de –