休息和退出有什么区别?

sri*_*ali 5 c c++

即使我多次使用break()和exit()语句,我也有点困惑.当我们应该使用它们时,我需要知道两者的确切含义.请用小例解释.谢谢.

Ara*_*raK 20

break是,一个关键字离开所述当前构建体样环.exit是一个non-returning将控件返回给操作系统的函数.例如:

// some code (1)
while(true)
{
   ...
   if(something)
     break;
}
// some code (2)
Run Code Online (Sandbox Code Playgroud)

在上面的代码中,break退出当前循环,即while循环.即一些代码(2)应在断开循环后执行.

退出时,它完全退出程序:

// some code (1)
while(true)
{
   ...
   if(something)
     exit(0);
}
// some code (2)
Run Code Online (Sandbox Code Playgroud)

你会退出这个计划.即,在某些情况下未达到某些代码(2)exit().


Rem*_*o.D 8

break是语言的控制流程语句.它表示要执行的下一个语句是循环结束时(或switch语句末尾)的语句

 while (...) {  /* same for "do {} while" or "for" */ 
   ... 
   break;  -----+    
   ...          |  
 }              |
 ....       <---+  JUMP HERE!



 switch (...) {
   ... 
   break;  -----+    
   ...          |  
 }              |
 ....       <---+  JUMP HERE!
Run Code Online (Sandbox Code Playgroud)

exit()相反,它是一个函数,表示程序必须结束并且必须将控制权交还给操作系统.根据操作系统的不同,在退出时,有许多事情会在幕后发生,以清理和释放所使用的资源.您还可以使用该atexit()函数(在C99中)定义要在退出之前调用的函数.