首页 > 编程笔记
C语言exit():正常终止程序
exit() 是 C语言的一个标准库函数,定义在
exit() 函数的功能是正常终止程序,并返回一个状态代码给调用程序或操作系统。exit() 函数的原型如下:
和异常终止程序的 abort() 函数不同,exit() 函数终止程序时会进行一些必要的清理工作,比如关闭程序打开的所有 I/O 流、释放程序中所有动态分配的内存等。
【实例】以下 C语言程序演示了 exit() 函数的功能和用法。
<stdlib.h>
头文件中。exit() 函数的功能是正常终止程序,并返回一个状态代码给调用程序或操作系统。exit() 函数的原型如下:
void exit(int status);
参数
status:程序的返回状态。通常,返回 0 表示成功,非 0 值表示失败或特定错误代码。返回值
无,exit() 没有返回值。和异常终止程序的 abort() 函数不同,exit() 函数终止程序时会进行一些必要的清理工作,比如关闭程序打开的所有 I/O 流、释放程序中所有动态分配的内存等。
【实例】以下 C语言程序演示了 exit() 函数的功能和用法。
#include <stdio.h> #include <stdlib.h> void cleanup() { printf("Performing cleanup before exit...\n"); } int main() { int value; // Register cleanup function atexit(cleanup); printf("Enter a positive integer: "); scanf("%d", &value); if (value <= 0) { fprintf(stderr, "Invalid input. Exiting with error code 1.\n"); exit(1); } printf("You entered: %d\n", value); // Normal termination exit(0); }在这个示例中,用户被要求输入一个正整数。如果输入无效(小于或等于 0),程序打印一条错误消息并使用 exit(1) 终止,返回错误代码 1。否则,程序正常终止并返回 0。通过 atexit 注册的清理函数将在 exit() 调用之前执行,确保任何必要的清理工作都能完成。