C语言中,整型常量和长整型常量,有什么区别?
一、指代不同
1、整型常量:是通常的整数,包括正整数、负整数和0,其数据类型显然是整型。
2、长整型常量:的数值范围最小是十进制的 -2147483647 ~ +2147483647,在计算机中最少占用4个字节。
二、书写方式不同
1、整型常量:整型常量前面没有+或者-,-10其实是一元-运算符和操作数10,同样整型常量的十进制表示并没有0,单独写一个0其实是一个八进制常量。
2、长整型常量:书写方法也分为十进制、八进制和十六进制整数三种,唯一不同的是在整数的末尾要加上小写字母“l”或者大写字母“L”。
三、内存存储不同
1、整型常量:整型常量内存大小和数值范围取决于编译器。
2、长整型常量:字节长度跟操作系统和编译器有关,long int长度至少32位,而64位类Unix系统为64位。
百度百科-长整型
百度百科-整型常量
那是由于计算机的储存模式造成的。
在计算机中,数字的储存形式是二进制。
整形数是一个八位二进制数。
如:
xxxxxxxx
最大是:11111111
八个一
如果是无符号数,那么第一位就应该不是符号位,所以8个1的值是:
255
如果是有符号,那么第一位将是符号位。0表示正,1表示负,
如:01111111 表示数字大小的只有了7位就是127.
11111111表示大小的也只有7位,是-127.
说白了就是是否正负数 无符号的不能表示正负而已
鹏仔微信 15129739599 鹏仔QQ344225443 鹏仔前端 pjxi.com 共享博客 sharedbk.com
图片声明:本站部分配图来自网络。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!