我爱码代码yeah 2021-07-28 10:44 采纳率: 0%
浏览 64

If语句中的判断部分中有赋值、递增、递减,那么会被执行吗

int a = 0; if(++a >5) cout<<a;这里判断语句为false,那么a还会+1吗?是不是说判断语句不管是true还是false,里面的赋值、递增、递减都被执行了,变量的值都被修改了?

  • 写回答

4条回答 默认 最新

  • CSDN专家-link 2021-07-28 10:49
    关注

    根据运算符优先级,if语句会先执行++a,使得a的值加1,结果为1
    然后再判断a>5,由于a值为1,所以if条件不成立
    综合以上,对于你的提问,结果是if语句必须先执行后才能确定是true还是false,明白这个顺序你应该就知道答案了

    评论

报告相同问题?

问题事件

  • 创建了问题 7月28日

悬赏问题

  • ¥15 asp写PC网站开通了微信支付,扫码付款不能跳转
  • ¥50 AI大模型精调(百度千帆、飞浆)
  • ¥15 关于#c语言#的问题:我在vscode和codeblocks中编写c语言时出现打不开源文件该怎么办
  • ¥15 非科班怎么跑代码?如何导数据和调参
  • ¥15 福州市的全人群死因监测点死亡原因报表
  • ¥15 Altair EDEM中生成一个颗粒,并且各个方向没有初始速度
  • ¥15 系统2008r2 装机配置推荐一下
  • ¥500 服务器搭建cisco AnyConnect vpn
  • ¥15 悬赏Python-playwright部署在centos7上
  • ¥15 psoc creator软件有没有人能远程安装啊