int long

比如说在win32下,int的范围是 -2^31 ~ 2^31 - 1;
也就是:[ -2147483648, 2147483647];
写成16进制:[80 00 00 00, 7F FF FF FF];

 

C中的int有好多种,是一个家族:short,int,long,字符常量,枚举均是int。再加上有符号、无符号。其实按照sizeof(int)的长度来说,就三种:short,int,long。C规定:int长度>=short,long的长度>=int,至于int的长度由编译器决定,一般来说是32bit。
  • 早期的操作系统是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

posted @ 2018-03-13 16:13  moon290  阅读(292)  评论(0)    收藏  举报