bit型变量为何不能和字符相加

2019-07-14 21:03发布

bit型变量只能取二进制的0和1,但是为何不能和字符相加呢,比如:    bit a = 1;
    char b = '9';
   char c = a+b;//这一句程序说运行错误,我是这样理解的:1 +‘9’字符对应的ascii码57 = 58,然后将结果送给c

疑问:char c = a +b;这种写法和我的理解错在哪了,一直脑袋懵



友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
4条回答
335702318
2019-07-15 08:57
lm51323 发表于 2016-4-22 00:08
问题早解决了,忘发了,关键点就是“字符和别的类型的变量相加,字符的ASCII码值首先要转化为变量对应的类型”
如int a ;
   bit b = 1;

'8'是ASCII字符,在数据里面看是 char 0x38
bit一般只作为判断跳转时才用到,bit跟其他类型的变量做加法必须做强制类型转换,这是C语言的语法要求的
而且你这样写可读性也不好
别人也许会看不明白,为什么一个bit的数据要跟‘8’相加

一周热门 更多>