JS958649 2017-11-16 10:48 采纳率: 0%
浏览 1074

【C++】关于自增运算符和自减运算符的

有一道题如下:
int x = 2,求 (x++) / 3 = ____ ,我填的答案是0。

我在我自己电脑上试着运行过这个,也的确是0,但是如果是改成
x = ( x++ ) / 3,然后输出x的话,这个x就是1,为什么呢?

但是如果改成 y = ( x++ ) / 3 ,然后输出y的话,那么y就是等于0,y初始化和没初始化没区别。对这个有点疑惑。
图片说明

  • 写回答

6条回答 默认 最新

  • 关注

    =表示赋值,x++是表示“先用后加”,但x=(x++)/3,x++外面有括号,故先进行++运算,x+1=3,x=3/3=1。

    评论

报告相同问题?

悬赏问题

  • ¥15 运筹学排序问题中的在线排序
  • ¥15 关于#flink#的问题:关于docker部署flink集成hadoop的yarn,请教个问题flink启动yarn-session.sh连不上hadoop
  • ¥30 求一段fortran代码用IVF编译运行的结果
  • ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
  • ¥15 lammps拉伸应力应变曲线分析
  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛
  • ¥15 请问Lammps做复合材料拉伸模拟,应力应变曲线问题