2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > 【C语言】exit()和_exit()的区别

【C语言】exit()和_exit()的区别

时间:2020-06-11 17:42:40

相关推荐

【C语言】exit()和_exit()的区别

1. 输出缓冲区

在linux系统上,一个进程默认打开三个文件:

标准输入stdin,

标准输出stdout,

标准输出错误stderr

2.printf()函数只是将内容写入到缓冲区,并没有直接输出

输出条件如下:

遇到"\n",输出进程结束,输出主动刷新 fflush(stdout);输出缓冲区满时,输出

3、exit()和_exit()的区别

注意:

atexit注册多个函数(最多32个函数),进程结束时,按照出栈的顺序进行调用。

例如:

#include <stdio.h>#include <stdlib.h>#include <unistd.h>void Func1(){printf("func1 start\n");}void Func2(){printf("func2 start\n");}int main(){atexit(Func1);atexit(Func2);printf("main start\n");sleep(5);printf("main end\n");exit(0);}

结果:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。