for带来的重复遍历
来源:互联网 发布:java经纬度转换度分秒 编辑:程序博客网 时间:2024/06/03 07:12
最近在调试一份代码时,遇到了类似了代码:
#include <iostream> using namespace std;int main(){ int cnt = 0; while(1) { int idx = 0; for( ; cnt < 20; ++cnt ) { cout << "cnt = " << cnt << endl; if( ++idx >= 5 ) { break; } } if( cnt >= 20 ) break; } return 0;}
上面的代码看上去没有任何问题。实际for相当于do{}while结构,如下所示:
#include <iostream> using namespace std;int main(){ int cnt = 0; while(1) { int idx = 0;#if 1 do{ if( cnt >= 20 ) { break; } cout << "cnt = " << cnt << endl; if( ++idx >= 5 ) { break; } ++cnt; }while(1);#else for( ; cnt < 20; ++cnt ) { cout << "cnt = " << cnt << endl; if( ++idx >= 5 ) { break; } }#endif if( cnt >= 20 ) break; } return 0;}
例子中只是输出一个数,但在实际项目中如果能类似代码遍历数组或链表,会现出某些节点被重复遍历。
0 0
- for带来的重复遍历
- 数组Array进行原型prototype扩展后带来的for in遍历问题
- 对数组Array进行原型prototype扩展后带来的for in遍历问题
- for循环写法带来的效率差异
- QQ for Linux发布带来的感想。
- for循环的遍历
- Dubbo的超时重试机制带来的数据重复问题
- Dubbo超时重试机制带来的数据重复问题
- 高并发带来的重复提交问题解决方案
- 重复new对象所带来的问题和解决办法
- 双层循环因为漏掉break带来的数据重复问题
- Dubbo超时重试机制带来的数据重复问题
- 使用msxml遍历重复的node问题
- 遍历LIST ,去除LIST重复的代码
- Java "for" 的遍历方式
- 带来的
- 两个for的int i重复定义
- html页面局部加载所带来的事件重复绑定解决办法bootstrap+summernote遇到的问题
- JSP简单练习-使用JDOM创建xml文件
- OkHttp –Android、Java应用中的 HTTP & SPDY 客户端库
- 层?为什么软件开发要分层
- -[ASIDataCompressor compressBytes:length:error:shouldFinish:] in ASIDataCompressor.o
- Java两个月速成(5)——熟能生巧
- for带来的重复遍历
- 早起の鳥兒
- 转json
- 解析漏洞总结
- View下的继承关系
- 关于编程一些鲜为人知的真相
- KMP算法---核心就是NEXT数组求解---最长真后缀与前缀相同的字符数
- camera拍摄视频耗电过快的问题分析
- json解析