我正在尝试构建一个C程序,它最初是在Linux上使用gcc -lm ...选项构建的,它在链接代码时使用数学库。如何在Win32环境下的Visual Studio 2005编译器的项目设置中使用相同的东西?
编辑:基本上原始Linux代码包含math.h并使用gcc -lm链接数学库。但是当我在Windows中使用它时,我收到编译错误:NAN :- undeclared identifier
。
我希望解决这个问题。
答案 0 :(得分:0)
Visual C ++ 2005不包含NAN
的定义。您可以这样定义:
#ifdef WIN32
#ifndef NAN
static const unsigned long __nan[2] = {0xffffffff, 0x7fffffff};
#define NAN (*(const float *) __nan)
#endif
#endif
(我从this blog post by Tom Distler获得了代码。感谢Tom。)