因为之前写排序问题时,用不好冒泡排序,因此抽出一段时间进行训练,发现有个很有意思的问题,使用i++时无法出现正常结果,如图1。

但是将其改为i+1后程序正常运行。
原因是由于i++为最后运算导致无法进入if。
博主在研究排序算法时遇到冒泡排序的一个问题,发现在使用i++时程序无法得到预期结果。经过排查,发现这是由于i++作为后缀运算符在表达式中最后执行,导致条件判断出错。改用i+1后,程序运行恢复正常。此篇博客探讨了这一细节,并提醒开发者注意此类陷阱。
因为之前写排序问题时,用不好冒泡排序,因此抽出一段时间进行训练,发现有个很有意思的问题,使用i++时无法出现正常结果,如图1。

但是将其改为i+1后程序正常运行。
原因是由于i++为最后运算导致无法进入if。
1595
1742

被折叠的 条评论
为什么被折叠?