隐性转换的加号优先级
已知下列定义:
int ival;
char cval;
double dval;
float fval;
指出可能发生的隐式类型转换:
cval=ival+fval+dval
请问该式发生的隐式转换是以下两种中的哪一种?为什么?
1。先将ival转换成float型,然后与fval相加后得float型,然后再将结果转换成double型,在与dval相加后成double型,在转换成char型付给cval;
[解决办法]
1。先将ival转换成float型,然后与fval相加后得float型,然后再将结果转换成double型,在与dval相加后成double型,在转换成char型付给cval;
就这种,优先级是+后=;三数相加从左到右;两数相+,隐性转换是“小从大”的原则