c++ - Windows 下 HUGE_VALF 未定义

标签 c++ windows

我正在尝试编译一个最初用于 Windows 下的 Linux/Unix 平台的代码库。代码使用 HUGE_VALF 变量似乎没有引用定义它的 header 。我在 Windows 上使用的 MS VC9 编译器抛出:

error C2065: 'HUGE_VALF' : undeclared identifier.

为 Windows 定义 HUGE_VALF 的推荐包含文件或方法是什么? Math.h 定义了 HUGE_VAL( double ),但没有定义 HUGE_VALF(作为 float )。

最佳答案

像这样用 *_MAX 替换 HUGE_VAL* 怎么样:

HUGE_VAL  => DOUBLE_MAX
HUGE_VALF => FLOAT_MAX
etc...

您可以只为 _WIN32 定义这些,或者只用适当的标准替换替换 HUGE_VAL* 内容。

编辑:MinGW-w64 (GCC) 有这些定义,可能它们是 C99 或 C++0x 的东西(还没有)在 MSVC9 中。也许 MSVC10 有它们,尽管 msdn 似乎遗漏了有关定义的任何信息。

关于c++ - Windows 下 HUGE_VALF 未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7475282/

相关文章:

c++ - Qt 复选框和单选按钮不显示

c++ - 如何静态链接到另一个项目,该项目本身需要链接到其他静态库?

c++ - 链接器和 dll 的 MSVC++ 2008 问题

c++ - 将 C++ 源代码反向为 UML 类图

c++ - (C/C++) 如何生成Windows和Linux都能运行的可执行文件?

c - 使用 CreateThread() 在 C 中线程化

c++ - 捕获 QComboBox 中的文本更改事件

windows - PE .idata 部分

linux - 如何在多线程程序中使用 Ollydbg?

windows - 为什么 React 页面在 Ubuntu 浏览器上看起来不错,但在 Windows 浏览器上却不行?