Date: 2018.10.23


1、参考:
2、使用方法

    这两个头文件是C99标准定义的关于类型重定义的,主要目的是实现统一的跨平台数据定义。但是VC编译器对C99标准的兼容性很差,有些版本没有这两个头文件。在VS2013版本之前是不支持C99规范的,因而也没有完全包含这两个头文件。

   先检查一下各个编译器对stdint.h、inttypes.h的支持情况:

  • VC6:stdint.h、inttypes.h都没有。
  • VS2003:stdint.h、inttypes.h都没有。
  • VS2005:stdint.h、inttypes.h都没有。
  • VS2008:stdint.h、inttypes.h都没有。
  • VS2010:有stdint.h,没有inttypes.h。
  • VS2012:有stdint.h,没有inttypes.h。
  • VS2013:stdint.h、inttypes均有。
  • GCC 4.7.0(Fedora 17):stdint.h、inttypes均有。
  • GCC 4.6.2(MinGW (20120426)):stdint.h、inttypes均有
3、获取路径

对于不存在这两个头文件的情况(主要针对MSVC 2010及之前版本),可以采用以下两种方法获取:

(1)google code:

​http://code.google.com/p/msinttypes/downloads/list​

Alexander Chemeris制作的MS VC++下的两个头文件

(2)github

​https://github.com/chemeris/msinttypes/tree/master​

说明:两种方法获取的头文件应该都是可用的,可能对应版本不一致。


THE END!