C / C++中的exit(),abort()和assert()

exit(), abort() and assert() in C/C++

出口()

函数exit()用于立即终止调用函数,而无需执行进一步的处理。当exit()函数调用时,它终止进程。在" stdlib.h"头文件中声明。它不返回任何东西。

这是C语言中exit()的语法,

1
void exit(int status_value);

这里,

status_value?返回到父进程的值。

这是C语言中exit()的示例,

现场演示

1
2
3
4
5
6
7
8
9
10
#include <stdio.h>
#include <stdlib.h>
int main() {
   int x = 10;
   printf("The value of x : %d
", x);
   exit(0);
   printf("Calling of exit()");
   return 0;
}

输出量

1
The value of x : 10

在上面的程序中,变量" x"用一个值初始化。打印出变量的值,并调用exit()函数。调用exit()时,它立即退出执行,并且不打印printf()。 exit()的调用如下-

1
2
3
4
int x = 10;
printf("The value of x : %d
", x);
exit(0)

abort()

函数abort()异常终止执行。建议不要使用此功能进行终止。在" stdlib.h"头文件中声明。

这是C语言中abort()的语法,

1
void abort(void);

这是C语言中abort()的示例,

现场演示

1
2
3
4
5
6
7
8
9
10
#include <stdio.h>
#include <stdlib.h>
int main() {
   int a = 15;
   printf("The value of a : %d
", a);
   abort();
   printf("Calling of abort()");
   return 0;
}

这是输出,

输出量

1
The value of a : 15

在上述程序中,变量" a"用该值初始化并打印。调用abort()时,它将立即但异常终止执行。调用abort()如下。

1
2
3
4
int a = 15;
printf("The value of a : %d
", a);
abort();

断言()

函数assert()在" assert.h"头文件中声明。它计算作为参数给出的表达式。如果expression为true,则不执行任何操作。如果expression为false,则中止执行。

这是用C语言编写的assert()的语法,

1
void assert(int exp);

这里。

exp?您要评估的表达式。

这是C语言中的assert()示例,

现场演示

1
2
3
4
5
6
7
8
9
10
#include <stdio.h>
#include
int main() {
   int a = 15;
   printf("The value of a : %d
", a);
   assert(a!=15);
   printf("Calling of assert()");
   return 0;
}

输出量

1
2
The value of a : 15
main: main.c:9: main: Assertion `a!=15' failed.

在上面的程序中,变量" a"用值初始化。打印变量的值并调用assert()函数。调用assert()时,它将计算表达式'a'不等于15,这是错误的,这就是为什么中止执行并显示错误的原因。

1
2
3
4
int a = 15;
printf("The value of a : %d
", a);
assert(a!=15);