下面的typedef是什么意思,为什么需要它
typedef unsigned long int ULONG;
它与它有什么不同
typedef unsigned long ULONG;
对于 gcc sizeof int = 4,sizeof long = 8,sizeof ULONG = 8。
它们是相同的。由于默认情况下long
是int
的修饰符,因此可以省略int
。short
和short int
、unsigned
和unsigned int
等也是如此。
这里要理解的基本内容是,long
、short
和 unsigned
是类型修饰符,而不是类型本身,不像int
、char
、double
等。
完全没有区别。 long
是long int
的同义词(就像short
是short int
一样)。
实际上,unsigned long
没有在C++标准ISO/IEC 14882中定义,因此,如果它对您有用,那只是因为您的编译器将unsigned long int
解释为unsigned long
。
long 的大小与 gcc 无关,而是 os