12

可能重复:
Visual Studio 是否支持新的 C/C++ 标准?

请参阅以下来自wiki的文本:

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

我的视觉工作室找不到任何这些文件:

  1. <cstdint>
  2. <cinttypes>
  3. <stdint.h>
  4. <inttypes.h>

为什么?

4

1 回答 1

15

编辑

请注意,从 Visual Studio 2013 开始,C99 库支持已添加到 Visual Studio。

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


MSVC 对 C 语言的支持很差,它们不支持 C90 以上的任何内容。Herb Sutter 已经在他的博客中公开声明了这一点。

<cstdint>MSVC2012 开始支持。

有一个msinttypes项目(从 Google Code 上的原始仓库导出)填补了 Microsoft Visual Studio 中 stdint.h 和 inttypes.h 的缺失。

如果您没有,Boost 还提供boost/cstdint.hpp 。

于 2012-10-19T08:50:59.980 回答