您的位置:首页 > 教育 > 锐评 > 快速搭建网站vue_android开发难吗_网络营销网站_如何制作自己的网址

快速搭建网站vue_android开发难吗_网络营销网站_如何制作自己的网址

2025/4/29 6:23:20 来源:https://blog.csdn.net/2401_86702190/article/details/147546453  浏览:    关键词:快速搭建网站vue_android开发难吗_网络营销网站_如何制作自己的网址
快速搭建网站vue_android开发难吗_网络营销网站_如何制作自己的网址

目录

背景及概念介绍

C文件接口

fopen

open

fread/fwrite

read/write

fclose

close

补充

小知识


背景及概念介绍

1.文件分为打开的文件和被打开的文件。

2.未打开的文件存在磁盘上。

3.依据冯诺依曼体系,访问一个文件都需要先打开文件,就是将文件加载到内存中,因为CPU只能和内存交流。

 

4.操作系统(OS)内一定存在大量被打开的文件(运行起来所必要的程序文件)。

所以会存在一种结构体,来描述被打开的文件,像PCB描述进程一样。 

 

5.对文件的所有操作,都是对外设(磁盘、显示器、键盘等)的输入和输出,简称IO。

 

6.文件操作本质是进程对文件的操作。

 

7.磁盘的管理者是操作系统。

C文件接口

fopen

 用来打开文件的C语言库函数,其中pathname为路径(只给文件名默认在当前路径下),mode为打开模式。

mode 打开模式有许多种,常用如下:

open

对于一个语言级别的库函数来说,它想要与内存等交流需要通过管理者操作系统来进行,所以fopen底层封装了open系统调用。

pathname依旧为路径(只给文件名默认在当前路径下)

flags为一个用来区分模式的数字,传参时,会传给它不同的宏(一个只有某个比特位是1的数字,运用位图传递标志位,比如1 2 3 8 16等)

常用如下:

 

mode为权限,就是文件的rwx权限。

例:多种宏组合成一个模式

fd是文件描述符,用来标识一个文件。

fread/fwrite

fread参数表

对于使用fread时,可以使用feof判断是否读到文件结尾

fwrite参数表

read/write

read:fread封装的系统调用

 

write:fwrite封装的系统调用

fseek/rewind

文件指针:就是一个用来指向文件位置的指针,可以将文件看做一维数组,文件指针就是数组指针。

rewind:定位文件指针到最开头

fseek:定位文件指针。

fseek参数表

fclose

 

close

补充

1.进程在启动时,就会默认打开三个文件,stdin,stdout,stderror,就是标准输入,标准输出,标准错误。

2.本质向显示器中写入,就是向stdout文件中写入。

3.为什么C语言要封装文件操作接口

(1)系统调用的使用需要的知识较多,直接使用成本较高。

(2)不同操作系统的接口不同,为了C语言的跨平台性和可移植性。(C标准库中,对各种操作系统都进行封装,采用条件编译进行区分)。

小知识

1.向显示器中输出时,都是以字符形式,比如一个int类型234,打印时是拆成一个一个的字符‘4’‘5’‘6’来打印的,叫格式化输出。

2.显示器和键盘都是文本文件,需要格式化工作,而对于二进制文件来说,不需要格式化工作。

3.文件本身的属性决定了它是二进制文件还是文本文件,而不是因为调用了不同的接口。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com