为了账号安全,请及时绑定邮箱和手机立即绑定

C++程序设计中,&&和||的优先级问题?

C++程序设计中,&&和||的优先级问题?

呼如林 2019-05-16 21:11:16
C++程序设计中,&&和||的优先级问题
查看完整描述

4 回答

?
狐的传说

TA贡献1804条经验 获得超3个赞

C/C++逻辑判断表达式上有个短路效应
A || B,当A为逻辑真时,整个表达式的值已经可以确定为真,B就不执行了
A && B,当A为逻辑假时,整个表达式的值已经可以确定为假,B就不执行了
这里x>y为真,所以后面的(++y)&&(++x)就不执行了。

查看完整回答
反对 回复 2019-05-26
?
达令说

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

查看完整回答
反对 回复 2019-05-26
?
拉风的咖菲猫

TA贡献1995条经验 获得超2个赞

&&是先求左边的值,如果是0则结果是0,否则再求右边的值,如果是0则结果是0,否则结果是1

||是先求左边的值,如果是1则结果是1,否则再求右边的值,如果结果是1则结果是,否则结果是0

因为C++的ostream默认状态下是不显示结尾的0的,和printf的固定小数位数显示方式不同。

查看完整回答
反对 回复 2019-05-26
  • 4 回答
  • 0 关注
  • 1303 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信