大家好,我偶然发现了一个用C语言编写的在线代码,在阅读代码时,我看到for
循环中没有initialization
,condition
或{{1 }}。循环看起来像这样。
increment
任何人都可以向我解释哪种for (;;)
{
bool main_flag = false;
while (main_flag == false)
{
displayMainMenu();
switch (main_input)
{
case 1: addCar(head, tail); main_flag = true; break;
case 2: removeCar(head, tail); main_flag = true; break;
case 3: display(head, tail); main_flag = true; break;
case 4: printf("Terminating..."); return 0;
default: printf("\nINVALID INPUT!\nTRYAGAIN !\n");
}
}
}
循环,它是如何工作的?非常感谢
答案 0 :(得分:2)
它确实在执行它所隐含的含义:没有条件可以停止循环,因此实际上是一个无限循环。
所以
for(;;) {}
本质上与
相同while(true) {}
摆脱循环的唯一方法是使用break
或return
。