我正在研究这个程序,我注意到使用%f作为double和%d作为float使我完全不同。有人知道为什么发生这种情况?使用%d和%f的C printf
int main()
{
float a = 1F;
double b = 1;
printf("float =%d\ndouble= %f", a, b);
}
这是输出
float = -1610612736
double = 190359837192766135921612671364749893774625551025007120912096639276776057269784974988808792093423962875123204096.0000
感谢。我现在明白了。 – user69514 2010-02-16 18:44:45