概述:
包括cstdint
导入STD命名空间中的符号名,并且可能在全局命名空间中。
包括stdint.h
导入全局命名空间中的符号名,可能在STD命名空间中。
C+标准库中还提供了C标准库的特性,作为一种通用的命名约定,C标准库中的相应名称预先由c+提供。
区别:
cstdint
是C++ 11
的头文件,stdint.h
是C99
的头文件(C和C++是不同的语言!)MSVC 2008
既不包含stdint.h
也不包含cstdint
。cstdint
的实现大多只是#include <stdint.h>
,并修复了一些命名空间/语言。
总结
-
在C+中,应该使用:
#include <cstdint>
并完全限定与一起使用的符号名。std::
-
在C语言中,应该使用:
#include <stdint.h>
- 参考资料