我一直在全面寻找适当的解释,为什么会发生这种情况,但仍然没有真正理解,所以我很抱歉,如果这是一个转发。为什么这个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