C语言中字符型数据与浮点型数据能相加吗?
2个回答
展开全部
可以相加。
在C中,字符型,也就是char类型,实际上是整型(integer)中长度最小的类型,在内存中只占8位(bit),也就是一个字节(byte),故也称int8(类似于int32, int64)
而浮点型则遵循IEEE 754标准,数据储存与整型不同。其中float是单精度浮点型。
虽然以上两者内存表示方法不同,但浮点型与整型的互相转换在C中可以是隐式的
如表达式
1 + ( 2.3 + 3 )
计算的最终结果是6.3,这是因为当一个浮点型和整型进行二元运算时,C的编译器会自动将整型隐式转换为更高精度的浮点型
故上述表达式等同于
((int)1) + ( 2.3 + ((int)3) )
所以,因为字符型等同于精度较小的整型,故可以和float类型的表达式相加
推荐于2017-09-11
展开全部
#include <stdio.h>
int main()
{
char ch = 'a';
float f = 0.123456, sum;
sum = ch + f;
printf("%f\n", sum);
return 0;
}
以上代码运行结果为97.123456
可知,可以相加。
追问
你能告诉我为什么外存不能代替内存吗?
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询