请问整型和长整型的数据类型有什么区别

在C++中,整型数据(signed)int和长整型long(int)的取值范围都是-2147483648~2147483648,请问两者有什么区别吗?

第1个回答  2013-09-18
int型和编译器的版本有关系,在tc等16位编译器下,他的范围是-32768~32767之间,只有在vc++等32位编译器下才是-2147483648~2147483648。而long不管在16位还是32位编译器取值都是-2147483648~2147483648。
第2个回答  推荐于2017-10-06
  整型(INTEGER)数据是不包含小数部分的数值型数据,用字母I表示,整型数据只用来表示整数,以二进制形式存储。
  长整型是程序设计中数据类型的一种表现方式,通常用long 表示长整型,long 有符号64位整数 范围是-2^63-2^63 -1 Int64unsigned long 无符号64位整数 0-2^64-1 UInt64.
  区别是:
  C的基本整形和长整型一样是随着计算机技术的发展而来的。
  早期计算机是16位的,整数就是16位的,int long是32位的,只是它们范围不一样。
  随着计算机的发展和C语言标准的发展,计算机主流是32位的,所以资源不再那么紧张,C99 规定int 是32位的就了long是一样了。
相似回答