int i = ;
int ans = (++i)+(++i)+(++i);

ans等于多少?我想大多数同学都会和我一样的认为: ans = 4 + 5 + 6 = 15.

而实际结果呢?

- Linux下用gcc编译的结果是16.

- Windows下用VC编译,debug模式的结果是16, Release模式的结果是18.

- VS 2010中不管是Debug模式或是Release模式,结果都是18.

这都是编译器优化的结果,导致结果不确定。

所以我们应该避免在一行代码中重复出现被递增(递减)的变量。

最新文章

  1. phpcms学习的一点心得
  2. 开发一款完备的android应用所必备的知识
  3. makefile学习小结
  4. XX管理系统案例
  5. 摩托罗拉SE4500 德州仪器TI Omap37xx/AM3715/DM3730/AM3530 wince6.0/Windows Mobile 6.5平台 二维软解调试记录及相关解释
  6. poj 2631 Roads in the North
  7. [OC Foundation框架 - 18] Class
  8. Xcode中C、C++、Object-C3种语言的混编
  9. 1.3.2. App Icon 和 Launch Image(Core Data 应用程序实践指南)
  10. 2017-10-27模拟赛2-T1 选举(election.*)
  11. asp.net,根据gridview 中checkbox复选框选中的行对数据库进行操作
  12. Python 多进程multiprocessing
  13. 06——react组件的基本定义和使用
  14. 简单模拟flume
  15. MySQL 数据库性能优化之SQL优化【转】
  16. vsphere 5.1 性能最佳实践。
  17. What Great .NET Developers Ought To Know (More .NET Interview Questions)
  18. MVC 扩展RadioButtonListFor和CheckBoxListFor
  19. python 爬取妹子图
  20. Netty源码分析第8章(高性能工具类FastThreadLocal和Recycler)---->第7节: 获取异线程释放的对象

热门文章

  1. Delphi 判断TImage是否为空及注意事项
  2. jsp页面has already been called for this response错误解决方法。
  3. [转帖]select提高并发,select和poll、epoll的区别(杂)
  4. SpannableString的基本用法
  5. html template & iframe
  6. Java并发编程实战3-可见性与volatile关键字
  7. MT【152】不患寡而患不均
  8. [CF850F] Rainbow Balls
  9. 【CF888G】Xor-MST(最小生成树,Trie树)
  10. 【BZOJ3294】放棋子(动态规划,容斥,组合数学)