【发布时间】:2015-10-21 20:08:40
【问题描述】:
没有任何内容被打印为输出,但是当我写 while(x==3.1f) 时它可以工作。 我已经彻底寻找答案,我什至找到了一些,但它并没有真正帮助我。人们已经回答说使用 f 作为后缀使其浮点默认类型为双精度。但它是如何真正起作用的......我希望有人在初学者级别向我解释。我刚刚开始学习 C 编程语言。请不要将此问题标记为之前已回答,因为我已经阅读了所有这些答案,但我仍然无法说服自己。 我还想知道后缀 f 究竟做了什么 .. 以及小数如何存储在 binary 中。我们为什么不简单给。作为另一个二进制代码,并像我们对整数所做的那样进行。我可能会问一些愚蠢的问题。但我真的很困惑
include<stdio.h>
int main()
{
float x = 3.1 ;
while(x==3.1)
{
printf("%f\n",x);
x=x-0.1;
}
return 0;
}
【问题讨论】:
标签: casting floating-point double