当算术表达式中的运算量是char型和float型时,系统应如何处理?结果是什么类型?

如题所述

当算术表达式中的运算量是char型和float型时,系统会char先被隐式转换为int型,然后int再被转换为float型,根据标准C++算数转换规则,运算符两边的变量总是提升为两者中较宽的类型。

当把小数据范围类型的数值或变量赋给另一个大数据范围类型变量,系统可以完成自动类型转型。这好比把装一斤水容器里的水倒进可以装两斤水的容器里一样。一般的会直接把byte,short,char直接赋值给int类型。

扩展资料:

当一个算术表达式中包含多个基本数据类型(boolean除外)的值时,整个算术表达式的数据类型将在数据运算时出现类型自动提升,其规则是:所有的byte、short、char类型被自动提升到int类型;整个表达式的最终结果类型被提升到表达式中类型最高的类型。

把数据从一种类型转换到另一种类型,比如:从int到long,在8大基本数据类型中,boolean不参与转换,因为boolean不属于数值类型。

温馨提示:答案为网友推荐,仅供参考