1) unsinged int仍是32位,而unsigned long就是64位了。 2) 更应该使用unsigned long因为处理器对64位具有更快的处理速度。 就目前而言,64位平台还不够成熟,所以向64位平台的移植基本不做考虑。 但是如果你坚持要考虑可移植性(注意是硬件32位平台向64位移植,而非软件): 1) 如果对速度敏感:使用unsigned long,...
unsigned 是无符号 long是长 int是整型数据 unsigned long int 就是无符号长整型数据 unsigned 整型的每一种都有无符号(unsigned)和有符号(signed)两种类型(float和double总是带符号的),在默认情况下声明的整型变量都是有符号的类型(char有点特别),如果需声明无符号类型的话就需要在类型前加上unsigned。无符号版本...
不一样,第一个是无符号整型,第二个是无符号长整形类型,在不同的设备上,他们所占的字节是不一样的,一般可能unsigned long比unsigned int占的字节长,但某些设备编译器上,他们的长度是一样的。
不一样,unsigned long 是unsigned long int的简写 一个事无符号整形,一个事无符号长整形
不一定一样,c语言标准规定int是4字节长,规定long类型的大小不得小于int,因此不同的操作系统平台甚至不同的编译器可能会各不相同。
long,它们都占据了4个字节的内存空间,因此在实际使用中并无显著区别。换句话说,尽管unsigned long的字面形式更为冗长,但在性能和功能上,它与unsigned int在32位系统中的表现是等效的。在编程中,除非有特别的需求去明确区分它们,否则通常可以互换使用,无需过多关注它们在字节上的细微差别。
默认为unsigned int。 这是C语言的一种缺省规则。即当定义变量 unsigned a;时,与定义 unsigned int a;是完全相同的。而要定义unsigned long,则必须写全unsigned long所有文字,如 unsigned long b;但是在32位编译器中,int和long都是占4个字节,unsigned int和unsigned long并没有区别。
没有区别,只不过long是long int的缩写。另外还有好多,signed与unsigned对应,也可以省略,signed int与int是同一个东西 unsigned int和unsigned是同一个东西
unsigned i.."short"的类型至少为16位 (如: short s = -5; sizeof(s) >4),但 "int", 或 "long" 的类型可能会因为平台的不同或编译器的设置而有变化,"long