FLOAT类型的显示问题
#include <stdio.h>int main(void)
{
float boat = 32000.0;
double abet = 2.14e9;
long double dip = 5.32e-5;
printf("%f 可以写成 %e\n",boat,boat);
printf("它是十六进制的%a\n",boat);
printf("%f 可以写成 %e\n",abet,abet);
printf("%Lf 可以写成 %Le\n",dip,dip);
return 0;
}
结果像下面:
32000.000000 可以写成 3.200000e+004
它是十六进制的0x1.f40000p+14
2140000000.000000 可以写成 2.140000e+009
0.000000 可以写成 3.172882e-317
不管dip的指数是正是负, 最后一行都是这样显示, 这是VSCODE的问题吗? 具体什么情况不知道,我将我运行的结果截图给你看,你自己分析吧
风过无痕1989 发表于 2020-10-24 16:33
具体什么情况不知道,我将我运行的结果截图给你看,你自己分析吧
第二个printf命令需要支持C99的编译器, 今天如果没人回答就选你做最佳了 我也遇到了,楼主你在代码第一行加这个试试#define __USE_MINGW_ANSI_STDIO 1
页:
[1]