int变量赋值给char变量的本质
本质上,int变量将其最低一个字节的内容,赋值给char变量。
如下代码:
int a = 0xFFFFFF41; char c = a; printf("c: %c\n", c);
根据小端存储模式,a的低位一字节存放的是十六进制数41,它的十进制数是65,对应的ASCII字符是A。
由于a的低位一字节内容赋值给了c,因此c的值就是十进制数65,输出字符结果为A。
本质上,int变量将其最低一个字节的内容,赋值给char变量。
如下代码:
int a = 0xFFFFFF41; char c = a; printf("c: %c\n", c);
根据小端存储模式,a的低位一字节存放的是十六进制数41,它的十进制数是65,对应的ASCII字符是A。
由于a的低位一字节内容赋值给了c,因此c的值就是十进制数65,输出字符结果为A。