l两个字符型变量相加得到的结果是什么类型?

发布网友

我来回答

5个回答

热心网友

int型。
ANSI/ISO C规定:两个比int窄的类型进行加减乘除或者“位与”、“位或”运算之前,会分别自动提升为int型,且运算结果为int型。因此,假设
unsigned char a = 255, b = 1, c = 0;
那么,
a+b == c 是不成立的,因为a+b == c的写法等价于 (int)a + (int)b == c.
a+b == 256 则成立

热心网友

int 型.因为C规定,运算时char型数据必须转换成int型.

热心网友

int 型
可用下面的程序来验证
#include <stdio.h>
int main()
{
char a=5,b=10;
printf("sizeof(a)=%d\n",sizeof(a));
printf("sizeof(b)=%d\n",sizeof(b));
printf("sizeof(a+b)=%d\n",sizeof(a+b));
return 0;
}

热心网友

字符是
char
只能是单个字符,用
'
标注,例如:
char
a
=
'a';
字符串是
string,
理论上长度任意,不过目前实际上是有最大值,

"
标注,例如:
string
a
=
"axxx";

热心网友

还是字符型

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com