= 运算符优先级高于 == 运算符。这意味着赋值操作优先于相等性比较执行。因此,在赋值操作之后进行相等性比较可能会导致意外结果。
C++ 中 = 和 == 的优先级
在 C++ 中,赋值运算符(=)和相等性运算符(==)具有不同的优先级。
优先级顺序:
一元运算符(如 *、&)乘法和除法运算符(*、/、%)加法和减法运算符(+、-)移位运算符(>)关系运算符(==、!=、、=)相等性运算符(==、!=)赋值运算符(=、+=、-=、*=、/=、%=)
这意味着:
立即学习“C++免费学习笔记(深入)”;
= 比 == 优先级更高,因此赋值操作将在相等性比较之前执行。例如,以下代码将输出 10,因为 = 运算符优先于 == 运算符:
int x = 5;if (x = 10) { cout << "x 等于 10" << endl;}
登录后复制另一方面,以下代码将输出 false,因为 == 运算符优先于 = 运算符:
int x = 5;if (10 == x) { cout << "x 等于 10" << endl;}
登录后复制
使用建议:
为了避免混乱并提高代码可读性,最好使用括号明确运算符的优先级。记住 = 运算符的优先级更高,在与 == 运算符结合使用时要小心。
以上就是c++++中=和==的优先级的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2569145.html