为什么Microsoft Visual Studio找不到<stdint.h>?</stdint.h>

时间:2012-10-19 08:32:36

标签: c++ std stdint

  

可能重复:
  Visual Studio support for new C / C++ standards?

请参阅以下wiki

中的文字

C99标准包括几种新整数类型的定义,以增强程序的可移植性[2]。已经可用的基本整数类型被认为是不够的,因为它们的实际大小是实现定义的并且可能在不同系统之间变化。新类型在嵌入式环境中特别有用,在这些环境中,硬件通常只支持几种类型,并且支持因系统而异。所有新类型都在inttypes.h头文件中定义(C ++中的cinttypes头文件),也可以在stdint.h头文件中找到(C ++中的cstdint头文件)。这些类型可以分为以下几类:

我的visual studio找不到任何这些文件:

  1. <cstdint>
  2. <cinttypes>
  3. <stdint.h>
  4. <inttypes.h>
  5. 为什么?

1 个答案:

答案 0 :(得分:14)

修改

请注意,从Visual Studio 2013开始,C99 library support已添加到Visual Studio中。

以下答案是我在Visual Studio 2013添加支持之前的旧答案:


MSVC对C语言的支持很差,他们不支持C90以后的任何内容。 Herb Sutter已经公开声明了in his blog

MSVC2012支持

<cstdint>

有一个msinttypes项目填补了Microsoft Visual Studio中stdint.h和inttypes.h的缺失。

如果您没有,则提升boost/cstdint.hpp