类型转换问题

来源:互联网 发布:明星年龄造假知乎 编辑:程序博客网 时间:2024/06/07 05:09

1、混合类型算数表达式
目标转换类型最宽,将其余数据提升类型

int ival = 3;double dval = 3.14;ival + dval;

ival被提升至3.0

2、用一种类型表达式赋值给另一类型对象,包括表达式传递给函数,函数返回值等。
决定于目标变量的类型,对赋值变量就行截取

总结如下
1、防止精度损失,如果有必要,类型总是被提升为较宽的类型。
2、如果没有long double,double,float,那么所有小于整形的类型都被提升为整形,包括char,short int 等

通过把不同的类型提升到当前出现的最宽的类型来实现。

0 0
原创粉丝点击