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。

posted @ 2016-01-15 23:53  Demon90s  阅读(3474)  评论(0编辑  收藏  举报