基本数据类型中的长度问题

来源:百度知道 编辑:UC知道 时间:2024/05/13 15:40:33
类型 一般长度(二进制位)
char 8
unsigned char 8
int 16 or 32
unsigned int 16 or 32
short int 16
unsigned short int 16
long int 32
unsigned long int 32
float 32
double 64
long double 80

长度指编译系统用多大的空间存储数据,因为c语言是高级语言,所以对于不同平台可能会不一样。比如unsigned int通常是16位,所以范围是0~65535(2的16次方减1),超过就会进位(有符号数是溢出)。
=======================================
上面那段话

一个字节8位,UNSIGNED一般两个字节所以是16位,所谓位就是多少个0或1叠一起,比如0000,叫4位,16位就是16个0或1叠一起,
用二进制表示数字时,可以表示2的N次方个数(N是多少位)比如两位二进:
00是0,01是1,10是2,11是3所以是2的2次方等于4.即两位二进制可以表示4个数.又因为二进制的第一位是符号标志位。。正数为0,负数为1
而unsigned的就是无符号数.没有负的.所以范围是2的16次方再减去1(因为无负第一们不能是1)
进位就是如果你的数超过了65535那么你就用那个数减去65536得的数再用二进制表示,符号数就是第一位数.溢出就是他变成了1.

二进制的第一位是符号标志位。。正数为0,负数为1
有unsigned的就是无符号数,就是没有正负号。。
有符号数。有正负号。