为了账号安全,请及时绑定邮箱和手机立即绑定

关于++x的一些小问题?

我在2-22章节中做到了这个题(前面的无关代码省去了):int x=1;

bool a =++x*x >3;  运算符的优先级不是一元运算符高于乘除取余吗?

那我算出的 bool a =++x*x>3 应该是false吧?因为++x的优先级大于x*x 所以我算的是2*1>3 得出了false得结果。但是我在评论中看到同学们算的结果是 bool a = ++x*x>3 得出的结果是4 true 请问是我在哪里的计算或理解出了问题吗?

正在回答

4 回答

 我 也是有这个 疑问.。。但是有些是不变的 ,分不清楚,不变的是常量

0 回复 有任何疑惑可以回复我~

666


0 回复 有任何疑惑可以回复我~

你的分析是对的,先计算++x,但是x是值类型,简单说,只要你在某一个地方修改它的值,以后用它的时候都是修改后的那个值

1 回复 有任何疑惑可以回复我~
#1

千温

修改一次之后 之后的值就一直被修改了是吧
2022-02-09 回复 有任何疑惑可以回复我~

哦不好意思刚刚才发现有相似的提问并且我也在其中找到了解决问题的答案:++x先运行即 x+1=2;随后后面x*x的变量x也变为了2,所以 2*2>3是true

1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C#开发轻松入门
  • 参与学习       254045    人
  • 解答问题       1459    个

本门课程是C#语言的入门教程,将带你轻松入门.NET开发

进入课程

关于++x的一些小问题?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信