Microsoft Visual Studio 2010是否支持c99?

时间:2011-07-14 05:39:07

标签: c visual-studio visual-studio-2010 c99

我想知道Microsoft Visual Studio 2010是否支持C99。如果没有,我如何使用intptr_tuintptr_t等标准类型?

3 个答案:

答案 0 :(得分:11)

Visual Studio 2010不支持C99语法。 stdint.h是所有C / C ++编译器中非常常见的文件,它存在于Visual C ++ 10.0安装中,包含在Windows SDK中(无论您使用的是哪种版本的Visual Studio)。

stdint.h可以在:

找到
  • C:\ Program Files(x86)\ Microsoft Visual Studio 10.0 \ VC \ include \

此文件确实为intptr_t提供了typedef。您可以在任何您喜欢的C或C ++项目中使用它。

答案 1 :(得分:8)

据我所知,Visual Studio 2010不支持C99。要使用stdint.h中的类型,您必须使用typedef。跨平台的方法是:

#ifdef _WIN32
typedef signed short int16_t
#else
#include <stdint.h>
#endif

另见这个问题: Visual Studio support for new C / C++ standards?

答案 2 :(得分:2)

Microsoft C不支持C99。但是,MSVC 16(Visual Studio 2010提供的内容)实现了即将推出的C ++ 0x标准的很大一部分。 C ++ 0x包含了C99中的一些头文件,例如stdint.hinttypes.h - 这就是为什么你得到一些带有MSVC 16的C99的花絮。

感谢小事(我希望MSVC在编译直接C文件时支持更多的C99)。