C语言中,整型常量和长整型常量,有什么区别?

整型常量和长整型常量(包括有符号的和无符号的),为什么占用字节数和取值范围都一样?他们有什么区别?哪位能指点一下?谢谢啦!

一、指代不同

1、整型常量:是通常的整数,包括正整数、负整数和0,其数据类型显然是整型。

2、长整型常量:的数值范围最小是十进制的 -2147483647 ~ +2147483647,在计算机中最少占用4个字节。


二、书写方式不同

1、整型常量:整型常量前面没有+或者-,-10其实是一元-运算符和操作数10,同样整型常量的十进制表示并没有0,单独写一个0其实是一个八进制常量。

2、长整型常量:书写方法也分为十进制、八进制和十六进制整数三种,唯一不同的是在整数的末尾要加上小写字母“l”或者大写字母“L”。

三、内存存储不同

1、整型常量:整型常量内存大小和数值范围取决于编译器

2、长整型常量:字节长度跟操作系统和编译器有关,long int长度至少32位,而64位类Unix系统为64位。

参考资料来源:百度百科-长整型

参考资料来源:百度百科-整型常量

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-30
现在通常都是32位的系统 所以int和long占用字节是一样的 都是4个字节
在以前旧的16位系统上,int占2个字节 long 占4个字节
同样在新的64位系统上,int占4个字节 long占8个字节本回答被提问者采纳
第2个回答  2012-05-31
常量,就是固定不变的量,是和变量相对而言的! 整形常量就相当于咱们常说的整数! 实形常量,就相当于常说的小数!在C语言中,实形常小数点后默认是6H
第3个回答  2012-05-31
在32系统位下一样而已 64系统下 长整形就比整形的表示范围大一倍了
相似回答