c语言中int与long的区别

int和long的范围及其他区别
2024-12-28 11:22:48
推荐回答(5个)
回答1:

  • 早期的操作系统是16位系统,

    int用二字节表示,范围是-32768~32767;

    long用4字节表示,范围是-2147483648~2147483647。

  • 后来发展到32位操作系统,

    int 用4字节表示,与long相同。

  • 目前的操作系统已发展到64位操作系统,但因程序编译工艺的不同,两者表现出不同的差别:

    • 32位编译系统:int占四字节,与long相同。

    • 64位编译系统:int占四字节,long占8字节,long数据范围变为:-2^63~2^63-1

回答2:

早期的C平台是16位int系统,int用二字节表示,范围是-32768~+32767;long是long int的简写,用4字节表示,范围是-2147483648~+2147483647。显然在早期平台下long能表示的整数范围要比int大得多。而时下的平台流行的是32位int系统,即4字节系统,int与long在这样的系统下已经没有区别了,它们都是4字节带符号整数,表数范围都是-2147483648~+2147483647。

回答3:

标准中规定int型必需16位或更高,long型必需32位,在以前16位机时这两种数据就是一个16bit一个32bit,但进入x86时代后实际上两者都是32位的,int型一般和

回答4:

long是4字节,int是2字节或4字节,现在一般的int都是4字节,除非一些比较老的编译器中才是2字节

回答5:

数据范围不一样
int -2^31~2^31-1
long long -2^63~^63-1