Microsoft Visual Studio 2010是否支持c99?

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

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

 #ifdef _WIN32 typedef signed short int16_t #else #include  #endif 

另请参阅此问题: Visual Studio支持新的C / C ++标准?

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

stdint.h可以在:

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

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

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

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