_exit()函数:直接使进程停止运行,清除其使用的内存空间,并销毁其在内核中的各种数据结构;
exit()函 数则在这些基础上作了一些包装,在执行退出之前加了若干道工序。
exit()函数与_exit()函数最大的区别就在于 exit()函数在调用 exit 系统调用之前要检查文件的打开情况,把文件缓冲区中的内容写回文件。
- #include<unistd.h>
- main()
- {
- printf("output begin\n");
- printf("content in buffer");
- //这里不能加\n,一旦加了换行,则printf会立即输出,行缓存模式
- _exit(0);
- }
- //输出:output begin