当前位置: 首页 > news >正文

渭南市网站建设_网站建设公司_自助建站_seo优化

温泉网站建设,深圳网站开发深圳网站设计,网站建站网站设计公司,免费咨询图片大全文章目录 1.文件缓冲区1.1介绍1.2缓冲文件系统1.3冲刷函数fflush1.4认识linux下的缓冲区 2.linux小程序的实现2.1 回车\r和换行\n2.2倒计时程序2.3进度条小程序sleep/usleep代码运行结果 1.文件缓冲区 1.1介绍 为缓和 CPU 与 I/O 设备之间速度不匹配#xff0c;文件缓冲区用以… 文章目录 1.文件缓冲区1.1介绍1.2缓冲文件系统1.3冲刷函数fflush1.4认识linux下的缓冲区 2.linux小程序的实现2.1 回车\r和换行\n2.2倒计时程序2.3进度条小程序sleep/usleep代码运行结果 1.文件缓冲区 1.1介绍 为缓和 CPU 与 I/O 设备之间速度不匹配文件缓冲区用以暂时存放读写期间的文件数据而在内存区预留的一定空间。使用文件缓冲区可减少读取硬盘的次数。 1.2缓冲文件系统 系统自动地在内存为程序中每一个正在使用的文件开辟一块文件缓冲区。 从内存向磁盘输出数据先送到内存中的缓冲区缓冲区装满后一起输送到磁盘上。从磁盘向计算机读入数据从磁盘文件中读取数据输入到内存缓冲区充满缓冲区从缓冲区逐个地将数据送到程序数据区程序变量等。缓冲区的大小根据C编译系统决定。 1.3冲刷函数fflush int fflush( FILE *stream ); 将缓冲区内数据写到stream 指定文件。 成功返回 0 错误返回 EOF 高版本vs无法使用 fclose关闭文件时也会刷新缓冲区#include stdio.h #include windows.h int main() {FILE* pf fopen(test7.txt, w);if (!pf){perror(fopen);return 1;}fputs(abcdef, pf); //数据输出到buffer//此时文件中无内容Sleep(10000); //睡眠10sfflush(pf); //刷新缓冲区Sleep(10000); //睡眠10s//此时数据到达文件fclose(pf);pf NULL;return 0; }1.4认识linux下的缓冲区 在linux下gcc编译这两段代码时 结果是不同的 左边先输出后睡眠 右边先睡眠后输出 c语言不是从上到下一行一行执行的吗? 确实是的 实际上printf先于sleep执行但是sleep执行完后这个程序才结束 才会输出信息 为什么执行流到printf时 不直接显示以及为什么左边加了换行就能先显示? c语言存在输出缓冲区(一段内存空间) 显示器设备一般的刷新策略是行刷新 即碰到\n就把\n之前的所有的字符显示出来 所以左边代码先显示 后边代码存入到缓冲区 直到程序结束才显示 当一个程序执行会自动打开stdin srdout stderr三个标准IO流 如何在没有换行符的情况下让他执行到printf时就显示? #include stdio.h #includeunistd.h int main() {printf(hello linux!);fflush(stdout);sleep(3);return 0 }2.linux小程序的实现 2.1 回车\r和换行\n 老式键盘的Enter: 实际上是 换行回车[C语言中的\n也是] #include stdio.h #includeunistd.h int main() {int count 5;while(count){printf(count是: %d\n,count);count--;sleep(1);return 0;} }可以正常输出 #include stdio.h #includeunistd.h int main() {int count 5;while(count){printf(count是: %d\r,count);count--;sleep(1);return 0;} }不输出任何内容 2.2倒计时程序 #include stdio.h #includeunistd.h int main() {int count 5;while(count){printf(count是: %d\r,count);fflush(stdout);count--;sleep(1);return 0;} }每执行一次printf 将要输出的信息输出到缓冲区 当执行fflush函数时 将信息从缓冲区刷到显示器 之后\r回车 光标回到行首 count– 2.3进度条小程序 sleep/usleep 代码 运行结果 linu-vim-c-bar
http://www.ihoyoo.com/news/18596.html

相关文章:

  • 网站外链带nofollow是什么意思新软件推广平台
  • 淘宝网站的建设目的是什么意思个人建网站
  • html5网站怎么做凡科网代理商登录
  • 做盗版电影网站犯法吗苏州诗华洛网站建设
  • 公司网站建设计入明细科目网页制作素材服装类
  • 先备案 做网站网络营销推广及优化方案
  • 手机网站首页模板网站开发公司基本业务流程图
  • 手机网站开发者工具中山免费建网站
  • 全球设计网站有哪些如何将百度地图加入网站
  • 杭州英文网站建设青岛专业网站开发
  • 为什么不用h5做网站合肥高端网站建设工作室
  • 重庆做网站电话支付宝 手机网站支付接口2.0
  • 诚信网站的申请有几家公司可以做的网站建设实训的报告
  • 查公司备案网站备案网站如何优化流程
  • 南京电信网站备案网推是什么意思
  • 貴阳建设银行网站公司网站建设与维护工作计划
  • 搜索网站排行榜做网站维护有前途吗
  • 西安网站设计西安搜推宝网站统计系统 怎么做
  • 帝国cms 做的完整的网站有没有兼职网站开发一个月
  • 北京建站公司哪家好都选万维科技南通网站建设方法
  • 自己做的网站背景怎么设置呼和浩特网站建设公司
  • 北京模板网站建设全包外贸网站都有哪些内容
  • 建网站 南京物业管理系统有哪些模块
  • 做社区网站网站目录编辑审核的注意事项
  • 小企业网站模板安卓手机本地视频播放器
  • 青海做网站最好的公司网站备案连接怎么做
  • 最好加盟网站建设建站之星收费版
  • 网站开发技术考试试卷郑州seo关键词优化公司
  • 新沂市建设局网站营销网站建设教学
  • 深圳建网站哪个公司长春师范大学