一。bit (位)
字节 = 8 bit
字 = 4 个字节 = 32 bit
半字 = 2 个字节 = 16 bit
字节长度: 变量在内存中所占的存储空间的大小
数据类型 字节长度
char 1
short 2
int 4
long 4
float 4
double 8
指针 4 (指针保存地址,操作系统中地址是固定的,32位的是4个字节,64位的是8个字节)
二。strlen 和 sizeof 的区别
sizeof是运算符而 strlen 是一个函数
虽然都是统计字符串的个数,但是sizeof 统计的字符中包括‘\0’,strlen 是不包括的
两种方式的区别
sizeof (num) 数据类型
sizeof num 变量
三. 有符号和无符号的范围计算
unsigned char
0000 0000 = 0 (最小)
1111 1111 = 255(最大) 简单的计算方法 : 1111 1111 255
+0000 0001 1
10000 0000 256
signed char
0+ 1-
0 000 0000 = 0
0 111 1111 =127
1 000 0000 = -128
1 111 1111 = -1
计算机最后保存的就是补码
正数的原码就是补码
负数的补码就是负数的绝对值源码取反加1
注意C不做减法
‘a' = 97
0 ---> '\0'
计算的时候,是补码之间的计算!!!!!