即使我多次使用break()和exit()语句,我之间也有点混淆。当我们应该使用它们时,我需要知道两者的确切含义。请用小例解释。 谢谢。
答案 0 :(得分:20)
break
是退出 当前构造的关键字,如循环。 exit
是一个non-returning
函数,它将控件返回给操作系统。例如:
// some code (1)
while(true)
{
...
if(something)
break;
}
// some code (2)
在上面的代码中,break退出当前循环,即while循环。即一些代码(2)应在断开循环后执行。
退出时,它完全退出程序:
// some code (1)
while(true)
{
...
if(something)
exit(0);
}
// some code (2)
你会离开这个计划。即在exit().
答案 1 :(得分:8)
break
是该语言的控制流语句。它表示要执行的下一个语句是循环结束时(或switch
语句末尾)的语句
while (...) { /* same for "do {} while" or "for" */
...
break; -----+
... |
} |
.... <---+ JUMP HERE!
switch (...) {
...
break; -----+
... |
} |
.... <---+ JUMP HERE!
相反, exit()
是一个函数,表示程序必须结束并且必须将控制权交还给操作系统。根据操作系统的不同,在退出时,有许多事情会在幕后发生,以清理和释放所使用的资源。您还可以使用atexit()
函数(在C99中)定义要在退出之前调用的函数。
答案 2 :(得分:2)
break用于退出循环。
exit用于退出程序。
#include<stdio.h>
#include<stdlib.h>
main()
{
int d;
while(1)
{
scanf("%d",&d);
if(d==1)
{
break;
}
else if(d==4)
{
exit(0);
}
}
printf("WELCOME YOU MATCH BREAK\n");
}
如果按1,它将退出 循环。不是来自该计划。所以 那个时候它会打印字符串。
如果按4,它将退出 程序,它不会打印字符串。