【发布时间】:2021-06-27 04:35:54
【问题描述】:
我使用的是 Windows 10 和 MinGW-x64 gcc 8.1.0。我试图使用 scanf 将 long double 作为输入。代码如下:
#include<stdio.h>
#include<stdlib.h>
int main(int argc, char const *argv[])
{
long double a;
scanf("%Lf",&a);
printf("%Lf",a);
return 0;
}
控制台上的输出是 0.000000。 为什么呢? 是windows的问题吗?
【问题讨论】:
-
这可能会回答您的问题stackoverflow.com/questions/4089174/printf-and-long-double。如果我没记错的话,MinGW 不支持那种数据类型。
-
或者我认为你可以使用下面的
#define printf __mingw_printf宏让它“工作”。
标签: c windows gcc long-double