while(1)的用法是什么?

时间:2016-05-05 17:42:26

标签: c++ while-loop

任何人都可以解释while(1)的用法吗? 我是c ++&的初学者我想知道什么时候应该使用(1)? 我该如何使用它? 请举例解释。 提前谢谢。

3 个答案:

答案 0 :(得分:2)

嗯,对于嵌入式裸机代码,它通常是这样编写的:

 int main() {
      while(1) {
           handle_interrupts();
           poll_sensors();
      }
      // If you come here some processor exception occurred
 }

答案 1 :(得分:2)

当想要实现一个从循环体的某个中点退出的循环时,典型的实现将是一个无限的"在循环体的中间某处循环使用条件break(或returnthrow等。

你如何表达"无限"循环是你自己的喜好。有些人会用

while (true) // same as while (1)
{
  ...
  if (exit condition is true)
    break;
  ...
}

其他人会选择

for (;;) 
{
  ...
  if (exit condition is true)
    break;
  ...
}

我亲自使用

do 
{
  ...
  if (exit condition is true)
    break;
  ...
} while (true);

选择最适合您的方式。

答案 2 :(得分:1)

这是无限循环的基本用法:

while(1)
{
   // several examples:
   // keep running my motor
   // keep checking temprature
   // keep broadcasting messages
   // keep listening on a channel
   // etc
}

您可以使用无限循环,但一旦满足某个条件就退出。例如:

while(1)
{
   // keep asking user to insert some string inputs
   //.. 
   //but if he enters "exit", "break" out of the loop
   if(UserInput == "exit")
   break;
}

也知道以下都被认为是相同的:

while(1)while(1==1)while(true)