首页  >  文章  >  后端开发  >  如何在 C 语言中从 Switch 语句中跳出循环?

如何在 C 语言中从 Switch 语句中跳出循环?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-10-30 03:35:28478浏览

How to Break Out of Loops from Within Switch Statements in C  ?

从 Switch 中跳出循环

在 C 中,有时需要从 switch 语句中跳出循环。在提供的代码片段中,用户希望在消息状态设置为 DONE 时退出循环。

使用 goto 语句

最直接的方法实现这一点是通过使用 goto 语句,如下面的代码所示:

<code class="c++">while ( ... ) {
   switch( ... ) {
     case ...:
         goto exit_loop;

   }
}
exit_loop: ;</code>

在此示例中,当状态设置为 DONE 时,goto 语句跳转到标签 exit_loop,有效地打破了两者switch 语句和 while 循环。

使用标志变量

另一种方法是使用标志变量。这可以是一个布尔变量,当 switch 语句中满足所需条件时,该变量设置为 true。然后可以通过检查 switch 语句后的标志变量来中断循环。

这是一个示例:

<code class="c++">bool should_exit = false;

while ( ... ) {
   switch( ... ) {
     case ...:
         should_exit = true;
         break;
     // ... more stuff ...
     case DONE:
         should_exit = true;
         break;
   }

   if (should_exit) {
       break;
   }
}</code>

在这种情况下,当状态为设置为 DONE,当 switch 语句后检查标志时,循环就会中断。

以上是如何在 C 语言中从 Switch 语句中跳出循环?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn