约%Lf和%Le无法正确打印

时间:2018-03-14 12:42:05

标签: c windows mingw

我运行了这样的程序:

$conn = new PDO('sqlsrv:Server=localhost\\SQLEXPRESS;Database=MyDatabase', 'MyUsername', 'MyPassword');

但它打印如下:

#include <stdio.h>
int main(void)
{
float aboat = 32000.0;
double abet = 2.14e9;
long double dip =5.32e-5;

printf("%f can be written %e\n",aboat,aboat);
printf("And it's %a in hexadecimal, powers of 2 notation\n",aboat);
printf("%f can be written %e\n",abet, abet);
printf("%Lf can be written %Le\n",dip,dip);
                      \\ this statement can not print rightly 
return 0;
}

如您所见,此结果必定不正确。但是我找不到错误,所以它是IDE的错误属性吗?我使用JetBrains CLion 2017.3.4。

感谢提醒。这是我的CMakeList.txt:

32000.000000 can be written 3.200000e+004
And it's 0x1.f40000p+14 in hexadecimal, powers of 2 notation
2140000000.000000 can be written 2.140000e+009
-1950228512509697500000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000.0
00000 can be written 272.500183

gcc版本是6.3.0

0 个答案:

没有答案