rubyonly 发表于 2019-10-20 18:16:45

把整数赋值给字符型变量


根据这个题意思是不是把整数赋值给字符型变量,运行过程应该是把整数转换为二进制进行计算?
以前只讲过把字符赋值给int 是转换为ASCII 表,所以这个不是很清楚

jackz007 发表于 2019-10-20 18:57:30

本帖最后由 jackz007 于 2019-10-20 19:05 编辑

#include <stdio.h>

int main(void)
{
      unsigned char a , b , c ;
      a = b = 200             ;
      c = a + b               ;
      printf("%u\n" , c)      ;
}


    c = a + b = 200 + 200 = 400 = 0x190 ,0x190 由两个字节组成,即高位字节 0x01 和 低位字节 0x90。由于 c 是 unsigned char 型变量,只能保存一个字节,所以,最终,高位字节 0x01 被忽略, 低位字节 0x90 会被保留在变量 c 中,而 0x90 的值是 144,所以,最终的 c 值就是 144。
页: [1]
查看完整版本: 把整数赋值给字符型变量