C++程序设计中,&&和||的优先级问题
4 回答
达令说
TA贡献1821条经验 获得超6个赞
&&比||的优先级高
如
真 || 真 && 假 结果为真
(真||真) && 假 结果为假
int a=3;
float f;
f=(float)a+3;
cout<<f<<endll;
这个如果改成
int a=3;
float f;
f=(float)(a+3);
cout<<f<<endll;
就会输出6.0了
因为你的f=(float)a+3;会使(float)先与a结合.也就是说只强制转换了a,然后与整型3相加.
当两个不同类型的数据相加时.C语言会转化成相同类型.于是a又被转成了整型.然后再与3相加.得出6
拉风的咖菲猫
TA贡献1995条经验 获得超2个赞
&&是先求左边的值,如果是0则结果是0,否则再求右边的值,如果是0则结果是0,否则结果是1
||是先求左边的值,如果是1则结果是1,否则再求右边的值,如果结果是1则结果是,否则结果是0
因为C++的ostream默认状态下是不显示结尾的0的,和printf的固定小数位数显示方式不同。
- 4 回答
- 0 关注
- 1303 浏览
添加回答
举报
0/150
提交
取消