我有一个在C中运行的无限while循环的代码.在它内部,它有几个嵌套的循环执行一些任务.但是在内部for循环的某个点上,为了处理错误,我被迫在外部while的下一次迭代中继续执行.
main_loop:
while (1) {
//Some functionalities...
for (j = 0; j < num; j++) {
for (k = 0; k < num; k++) {
goto main_loop; // Continue the while loop
}
}
}
如果我写为continue;
,它将继续for迭代.我知道我可以添加一些标志来控制所有循环的执行流,并修改这些标志来实现continue
操作.但我最终决定使用goto
句话来打破内部循环,继续进行While所希望的迭代.
由于goto
可能导致意大利面条代码的情况,我想知道goto
的这个用例是否足够正确,或者是否有任何其他特定的方法来继续C中类似代码库的外部循环?