C/C++中的Int类型

Chr*_*ley 0 c c++ int 64-bit

可能重复:
为什么C++ int和long类型都是4个字节?

在C/C++中,有什么区别:

u_int64 myNum;
Run Code Online (Sandbox Code Playgroud)

和:

unsigned long myNum;
Run Code Online (Sandbox Code Playgroud)

据我所知,两者都只有无符号整数,有64位内存.

jua*_*nza 8

unsigned long具有为64位,而uint64_t确实.有一种整数类型的层次结构,其中每个类型必须是作为前述类型的至少大:signed char,short,int,long,long long,和类似地对于及其无符号对应.有一些锚点,说明char是一个字节(一个字节不必是8位,据我所知short,至少是2个字节 16位.在C++ 11中,long long至少是64位.但是这些类型中没有一个是完全给定的位数.

有关更多信息,请参阅固定宽度整数类型(感谢链接的@chris).