x初始值是2
运行结果0 题目答案给的1, 如果是1的话思路大概是一下这样子:
运行结果0的话,我猜测是编译器在没读到x++的时候编译器已经把第一个x取成2了
有没有同学帮忙讲一下这个问题,或者推荐一下关于编译器扫描表达式规则的帖子也行
x初始值是2
运行结果0 题目答案给的1, 如果是1的话思路大概是一下这样子:
运行结果0的话,我猜测是编译器在没读到x++的时候编译器已经把第一个x取成2了
有没有同学帮忙讲一下这个问题,或者推荐一下关于编译器扫描表达式规则的帖子也行
x++;是先赋值再自增,先用2的值代进去算就是 x=2+1/2-2, 其中因为整型的除法规则,x这时就变成了0,然后x再自增,就变成了1