gpt4 book ai didi

c++ - 运算符优先级困惑

转载 作者:搜寻专家 更新时间:2023-10-31 01:01:45 25 4
gpt4 key购买 nike

大家好,看完 href= http://en.cppreference.com/w/c/language/operator_precedence这个链接,我以为我了解运算符的优先级,但我开始怀疑。该链接表示,在解析表达式时,列在某一行的运算符将比列在其下方一行的任何运算符更紧密地(就像通过括号一样)与其参数绑定(bind)。例如,表达式 *p++ 被解析为 *(p++),而不是 (*p)++。
那么表达式++*p 是如何被评估的,它是否像++(*p) 但如果是的话++ 具有更高的优先级或绑定(bind)然后 *,那么为什么 * 在上述情况下绑定(bind)得更紧,表达式呢*++p ?

最佳答案

运算符优先级定义当有多个选择时应首先应用哪个运算符。

来自您的链接:

Precedence and associativity are independent from order of evaluation.

表达式++*p,或任何形式的表达式:

{operator 2} {operator 1} {expression}

有一个定义明确的order of evaluation ,其中 {operator 1} {expression} 必须 被应用以生成 {operator 2} 可能作用的表达式。

关于c++ - 运算符优先级困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28403163/

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