gpt4 book ai didi

C++ 运算符优先级 =、* 和++

转载 作者:行者123 更新时间:2023-11-30 01:15:51 25 4
gpt4 key购买 nike

我对这个指针赋值有疑问:

*p++ = *q++;

根据 Operator Priority Table

运算符的优先级为“++”>“*”>“=”。

但是上面语句的结果先做了赋值“=”,如下

*p = *q;
p++;
q++;

为什么?

最佳答案

后递增运算符在其值已被计算之后递增其操作数。因此,指针取消引用发生在指针在该行之前保存的值上。但是,您给出的优先级是正确的;该表达式确实等同于

(*(p++)) = (*(q++))

关于C++ 运算符优先级 =、* 和++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27850172/

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