试图打印 LDBL_MAX

问题描述

我将 CodeBlocks 20.03 与嵌入式 MinGW-W64 gcc 编译器版本 8.1.0 一起用于 Windows 10。 我正在尝试打印 LDBL_MIN 和 LDBL_MAX 常量,通常在 10e4932 的范围内,但我得到的值在 10e-317 的范围内。

这是我的代码:

#include <stdio.h>
#include <float.h>

main()
{
    printf("Unit \"long double\" -> %i bytes -> range %Lf - %Lf.\n",\
                        sizeof(long double),LDBL_MIN,LDBL_MAX);
    printf("Unit \"long double\" -> %i bytes -> range %Le - %Le.\n",LDBL_MAX);
    printf("Unit \"long double\" -> %i bytes -> range %Lg - %Lg.\n",LDBL_MAX);
    printf("Unit \"long double\" -> %i bytes -> range %LG - %LG.\n",LDBL_MAX);
}

结果:

Unit "long double" -> 16 bytes -> range 0.000000 - 0.000000.
Unit "long double" -> 16 bytes -> range 3.172905e-317 - 3.172897e-317.
Unit "long double" -> 16 bytes -> range 3.17291e-317 - 3.1729e-317.
Unit "long double" -> 16 bytes -> range 3.17291E-317 - 3.1729E-317.

知道为什么吗?

谢谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)