1.数据类型
一个字节由8个二进制组成
11111111
00001010
char 类型是1个字节
char a = 10; char b = -1
//00001010 //11111111
int 类型是4 个字节
int a = 10 ;
//00000000 00000000 00000000 00001010
int b = -1;
//1111111 11111111 11111111 111111111
2.整形提升
把字节数达不到整形的数据类型提升到整形
提升原则:
(1)有符号: 在前面补充符号位
char c1 = 1;
//00000001 -- 整形提升--> 00000000 00000000 00000000 00000001(补正号)
char c2 = -1;
//11111111 -- 整形提升--> 11111111 11111111 11111111 11111111(补负号)
short a = 10;
//00000000 00001010 --整形提升-->00000000 00000000 00000000 00001010
(2)无符号: 在前面补0
unsigned char c = -1;
//11111111 -- 整形提升-- 00000000 00000000 00000000 11111111
//变为整形后结果是225 (2^8-1)