凌域 2023-03-05 11:23 采纳率: 70%
浏览 20

c语言运算符优先级的相关问题

#询问下运算符优先级问题

img


问下为什么这个操作是先取出p中的值,然后再让p指针指向下一个位置??
号的类型不是高于++这个类型吗?我的理解是应当先让p指向下一个位置,然后再用取出下一个位置的值。

  • 写回答

2条回答 默认 最新

  • 元气少女缘结神 2023-03-05 11:33
    关注

    按照优先级顺序来 应该是先 ++ 再 *
    即你的表达式A等同于A= * (p++) 即如下:
    tmp=p
    p=p+1 至此完成了p++的计算
    A= * tmp 至此完成了 * 的计算,符合优先级顺序
    所以你看起来是取的原来的p的解引用值,因为这是后自增,所以是如上流程

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 3月5日

悬赏问题

  • ¥15 Apache显示系统错误3该如何解决?
  • ¥30 uniapp小程序苹果手机加载gif图片不显示动效?
  • ¥20 js怎么实现跨域问题
  • ¥15 C++dll二次开发,C#调用
  • ¥15 请教,如何使用C#加载本地摄像头进行逐帧推流
  • ¥15 Python easyocr无法顺利执行,如何解决?
  • ¥15 为什么会突然npm err!啊
  • ¥15 java服务连接es读取列表数据,服务连接本地es获取数据时的速度很快,但是换成远端的es就会非常慢,这是为什么呢
  • ¥15 vxworks交叉编译gcc报错error: missing binary operator before token "("
  • ¥15 JSzip压缩文件时如何设置解压缩密码