Float和Double值在c 中造成混淆
我正在运行这个程序。 但得到奇怪的结果。
int main() { float a=.8; if(a < .8) printf("a is small\n"); else printf("a is not small\n"); float b=.7; if(b < .7) printf("b is small\n"); else printf("b is not small\n"); return 0; }
它给了我输出 –
一个不小
b很小
你为什么不用0.7f
。 0.7
默认情况下是double
,所以我们无法预测它的行为