标签:continue c for-loop infinite-loop
我正在编写一个代码,它将遍历直方图中的每个bin,并检查是否存在任何非零bin.如果有,它会抛出一条错误消息.我的问题是,我希望它跳过一个bin,因为这个bin不应该是空的,而是检查所有其他的bin.
唯一的问题是创造一个无限循环.这是我的代码
Int_t y;
for (int i = 0; i <= 100; i++) {
y = hist - > GetBinContent(i)
if (i = 1) continue;
else if (y != 0) {
std: cout << * * * * * ERROR * * * * * << std: endl;
break;
}
}
发生的事情是它为i = 0评估它,跳过i = 1,然后命中i = 2并且不断地一遍又一遍地评估它.如果我拿出“if(i = 1)继续;”然后它的工作原理.
有任何想法吗?
解决方法:
试试这个
if (i==1) continue;
i = 1表示你为i分配1. =表示分配和==表示比较.
在您的代码中,当您使用i = 1时,i的值将始终为1
标签:continue,c,for-loop,infinite-loop 来源: https://codeday.me/bug/20190722/1505781.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。