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

天涯网站怎么做外链湖南最新消息今天

天涯网站怎么做外链,湖南最新消息今天,wordpress模板修改图片大小,做网站定制📘北尘_:个人主页 🌎个人专栏:《Linux操作系统》《经典算法试题 》《C》 《数据结构与算法》 ☀️走在路上,不忘来时的初心 文章目录 一、FILE二、封装系统接口实现文件操作1、text.c2、mystdio.c3、mystdio.h 一、FILE 因为IO相…

在这里插入图片描述


📘北尘_:个人主页

🌎个人专栏:《Linux操作系统》《经典算法试题 》《C++》 《数据结构与算法》

☀️走在路上,不忘来时的初心

文章目录

  • 一、FILE
  • 二、封装系统接口实现文件操作
    • 1、text.c
    • 2、mystdio.c
    • 3、mystdio.h



一、FILE

因为IO相关函数与系统调用接口对应,并且库函数封装系统调用,所以本质上,访问文件都是通过fd访
问的。
所以C库当中的FILE结构体内部,必定封装了fd。
来段代码在研究一下

#include <stdio.h>
#include <string.h>
int main()
{const char *msg0="hello printf\n";const char *msg1="hello fwrite\n";const char *msg2="hello write\n";printf("%s", msg0);fwrite(msg1, strlen(msg0), 1, stdout);write(1, msg2, strlen(msg2));fork();return 0;}

运行出结果:

hello printf
hello fwrite
hello write

但如果对进程实现输出重定向呢? ./hello > file , 我们发现结果变成了:

hello write
hello printf
hello fwrite
hello printf
hello fwrite

我们发现 printf 和 fwrite (库函数)都输出了2次,而 write 只输出了一次(系统调用)。为什么呢?肯定和
fork有关!

一般C库函数写入文件时是全缓冲的,而写入显示器是行缓冲。
printf fwrite 库函数会自带缓冲区(进度条例子就可以说明),当发生重定向到普通文件时,数据的缓冲方式由行缓冲变成了全缓冲。
而我们放在缓冲区中的数据,就不会被立即刷新,甚至fork之后,但是进程退出之后,会统一刷新,写入文件当中。
但是fork的时候,父子数据会发生写时拷贝,所以当你父进程准备刷新的时候,子进程也就有了同样的一份数据,随即产生两份数据。
write 没有变化,说明没有所谓的缓冲。
综上: printf fwrite 库函数会自带缓冲区,而 write 系统调用没有带缓冲区。另外,我们这里所说的缓冲区,
都是用户级缓冲区。其实为了提升整机性能,OS也会提供相关内核级缓冲区。

缓冲区存在于FILE结构体内


二、封装系统接口实现文件操作

1、text.c

在这里插入图片描述

2、mystdio.c

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3、mystdio.h

在这里插入图片描述


http://www.shuangfujiaoyu.com/news/2936.html

相关文章:

  • 怎么做诈骗网站站长之家收录查询
  • 找做网站的上什么appseo实战密码第四版pdf
  • 一个公司可以做几个网站备案媒体发布平台
  • 发新闻稿做新闻源对网站有啥帮助适合小学生的最新新闻
  • 建立一个网站怎么做云南网络推广seo代理公司
  • 大连软件公司有哪些杭州百度人工优化
  • 网站建设html5源码万网登录入口
  • 邯郸建设网站制作百度top风云榜
  • 购物网站 怎么做自然搜索优化
  • 北京网站建设资讯晋江友情链接是什么意思
  • wordpress textarea上海搜索引擎优化1
  • 做什么网站比较简单关键词搜索优化
  • 福州网站怎么做的营销推广方案怎么写
  • 网站建设及营销方案营销说白了就是干什么的
  • 企业网站东莞网站建设制作成都爱站网seo站长查询工具
  • 天河门户网站建设公司seo网站排名优化价格
  • web网站开发 控件 图片windows优化大师是官方的吗
  • 做建站较好的网站免费com域名申请注册
  • 做网站 阿里云小程序开发
  • 什么网站可以做论坛app网站优化查询
  • 怎样看一个网站是不是织梦做的市场推广计划方案模板
  • 在线生成个人网站推荐株洲seo优化报价
  • 做网站竞争大吗百度站长工具网站
  • 如何做企业网站内链上海seo公司排名榜
  • 商赢网站建设seo的中文含义是什么
  • 凯里网站开发gzklyyseo外链在线提交工具
  • 一般网站用什么软件做经典软文案例或软文案例
  • 举报网站制度建设方面seo网站优化怎么做
  • 企业官网建站步骤发布推广信息的网站
  • 西宁网站建设哪家公司好有链接的网站