我一直在全面尋找適當的解釋,爲什麼會發生這種情況,但仍然沒有真正理解,所以我很抱歉,如果這是一個轉發。爲什麼這個double到int轉換不起作用?
#include <iostream>
int main()
{
double x = 4.10;
double j = x * 100;
int k = (int) j;
std::cout << k;
}
Output: 409
我似乎無法複製此行爲與任何其他數字。也就是說,用這種形式的任何其他數字代替4.10,並且輸出是正確的。
必須有某種我不理解的低級轉換的東西。
謝謝!
[C++中奇怪的double到int轉換行爲] /stackoverflow.com/questions/1860783/strange-double-to-int-conversion-behavior-in-c) – 2011-05-02 01:49:38
它只是讓我的頭旋轉試圖圍繞某人報告這樣的問題,而沒有提供他們什麼問題的信息是具有。 – 2011-05-02 02:03:14