c语言里字符型和浮点型相加是什么?与ASCII值有什么关系?

来源:百度知道 编辑:UC知道 时间:2024/06/01 23:28:59

根据自动的转换原则,低级的向高一级的转换,所以相加后的结果为字符型对应的ASCII值与浮点型相加后的结果,结果应该为浮点型。
因为字符型实际上是以ASCII值的形式存储的,和整形相同,所以直接进行与数值间的运算时,利用的是其对应的ASCII值,相当于整形数据和浮点型数据的运算
可以举一个简单的小例子,便于理解和验证,如下所示:
#include<stdio.h>
void main(){
char a='m';
float b=12.32;
printf("a的值为%c,b的值为%.2f\n\n",a,b);
printf("将字符型数据a(值为m)以整型输出为:%d\n",a);
printf("a+b的结果以浮点形式输出为%.2f\n",a+b);
}
试一下,看看结果就会明白了!

C语言没有字符型,char是有符号整型。