gpt4 book ai didi

C++ 二元运算符的优先顺序

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:12:39 25 4
gpt4 key购买 nike

以下参数的测试顺序是什么(在 C++ 中)?

if (a || b && c)
{
}

我刚刚在我们的应用程序中看到这段代码,我讨厌它,我想添加一些括号来澄清顺序。但我不想添加括号,直到我知道我将它们添加到正确的位置。

编辑:接受的答案和跟进

此链接包含更多信息,但并不完全清楚其含义。好像||和 && 的优先级相同,在这种情况下,它们是从左到右求值的。

http://msdn.microsoft.com/en-us/library/126fe14k.aspx

最佳答案

[ http://www.cppreference.com/wiki/operator_precedence] (通过谷歌搜索“C++ 运算符优先级”找到的)

该页面告诉我们,在第 13 组中,&& 的优先级高于 ||在第 14 组中,所以表达式等同于 || (b && c).

不幸的是,维基百科文章[ http://en.wikipedia.org/wiki/Operators_in_C_and_C%2B%2B#Operator_precedence]不同意这一点,但由于我 table 上有 C89 标准并且它与第一个站点一致,我将修改维基百科文章。

关于C++ 二元运算符的优先顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/113992/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com