全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Linux 中_exit和exit的区别

Linux 中_exit和exit的区别

在Linux的标准库函数中,有一套称作高级I/O的函数,我们熟知的printf 、fopen 、fread 、fwrite都在此列,他们也被称作缓冲I/O。其特征是对应每一个打开的文件,都存在一个缓冲区, 在内存中都有一片缓冲区,每次读文件会多读若干条记录,这样下次读文件时就可以直接从内存的缓存中取出,每次写文件时也仅仅是写入到内存的缓冲区,等待满足一定的条件(达到一定的数量,或者遇到特定字符,如换行和文件结束符EOF),再将缓冲区的内容一次性的写入文件,这样就大大增加了文件读写的速度,但也为我们编程带来了一点点麻烦,如果有些数据,我们认为已经写入了文件,实际上因为没有满足特定的条件,他们还只是保存在缓冲区内,这时我们用_exit函数直接将程序关闭,缓冲区中的数据就会丢失,反之,如果向保证数据的完整性,就一定要使用exit函数。

exit()函数与_exit()函数最大的区别就在于exit()函数在调用exit系统调用之前要检查文件的打开情况,把文件缓冲区中的内容写回文件,就是图中的"清理I/O缓冲"一项。

exit()函数定义在stdlib.h中,而_exit()定义在unistd.h中。exit()和_exit()都用于正常终止一个函数。但_exit()直接是一个sys_exit系统调用,而exit()则通常是普通函数库中的一个函数。它会先执行一些清除操作,例如调用执行各终止处理函数、关闭所有标准IO等,然后调用sys_exit。

    比如:

int main()
{ printf("this is a test function!!!/n")
 printf("test exit ");
 exit(0);
}
int main()
{ printf("this is a test function!!!/n")
 printf("test exit");
 _exit(0);
}

这两个程序,程序1输出的是两句话,而程序2只输出了一句话。原因就是因为最后一句话上没有加上特殊的字符,如换行和文件结束符,因为这个时候文件是存放在缓冲区的,这个例子中文件就是存放打开的显示设备的缓冲区中的,因为输出函数要写入,首先要进行系统调用,这个时候系统会打开显示设备的缓冲区,而exit的作用就是结束,清理,就是说先检查缓冲区,把没有写入的数据写入到文件,而_exit是立刻关闭文件,文件缓冲区的内容也就消失了,这个时候就不可能再输出到显示设备了。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# Linux  # _exit和exit的区别  # _exit和exit的对比  # _exit和exit比较  # 这个时候  # 区中  # 显示设备  # 句话  # 的是  # 换行  # 是一个  # 一个函数  # 有一  # 就会  # 放在  # 也就  # 在此  # 就不  # 这两个  # 希望能  # 带来了  # 但也  # 仅仅是  # 可以直接 


相关文章: 北京营销型网站制作公司,可以用python做一个营销推广网站吗?  网站制作企业,网站的banner和导航栏是指什么?  如何通过西部数码建站助手快速创建专业网站?  html制作网站的步骤有哪些,iapp如何添加网页?  动图在线制作网站有哪些,滑动动图图集怎么做?  如何挑选优质建站一级代理提升网站排名?  南宁网站建设制作定制,南宁网站建设可以定制吗?  在线教育网站制作平台,山西立德教育官网?  如何通过多用户协作模板快速搭建高效企业网站?  兔展官网 在线制作,怎样制作微信请帖?  如何快速启动建站代理加盟业务?  PHP 500报错的快速解决方法  linux top下的 minerd 木马清除方法  大学网站设计制作软件有哪些,如何将网站制作成自己app?  邀请函制作网站有哪些,有没有做年会邀请函的网站啊?在线制作,模板很多的那种?  早安海报制作网站推荐大全,企业早安海报怎么每天更换?  建站之星导航菜单设置与功能模块配置全攻略  网站制作模板下载什么软件,ppt模板免费下载网站?  如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?  再谈Python中的字符串与字符编码(推荐)  网站制作专业公司有哪些,如何制作一个企业网站,建设网站的基本步骤有哪些?  杭州银行网站设计制作流程,杭州银行怎么开通认证方式?  C#如何使用XPathNavigator高效查询XML  C++中的Pimpl idiom是什么,有什么好处?(隐藏实现)  ,怎么用自己头像做动态表情包?  已有域名如何快速搭建专属网站?  建站之星logo尺寸如何设置最合适?  如何处理“XML格式不正确”错误 常见XML well-formed问题解决方法  南京网站制作费用,南京远驱官方网站?  正规网站制作公司有哪些,目前国内哪家网页网站制作设计公司比较专业靠谱?口碑好?  建站之星伪静态规则如何正确配置?  如何快速搭建高效WAP手机网站吸引移动用户?  如何通过网站建站时间优化SEO与用户体验?  C++如何将C风格字符串(char*)转换为std::string?(代码示例)  如何选择香港主机高效搭建外贸独立站?  TestNG的testng.xml配置文件怎么写  浅析上传头像示例及其注意事项  昆明网站制作哪家好,昆明公租房申请网上登录入口?  ppt制作免费网站有哪些,ppt模板免费下载网站?  制作门户网站的参考文献在哪,小说网站怎么建立?  高防服务器租用如何选择配置与防御等级?  如何快速搭建高效WAP手机网站?  装修招标网站设计制作流程,装修招标流程?  c++ stringstream用法详解_c++字符串与数字转换利器  如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?  黑客入侵网站服务器的常见手法有哪些?  内网网站制作软件,内网的网站如何发布到外网?  中山网站推广排名,中山信息港登录入口?  娃派WAP自助建站:免费模板+移动优化,快速打造专业网站  网站视频怎么制作,哪个网站可以免费收看好莱坞经典大片? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。