1.1 标准IO介绍

IO 的实现包括两种实现:

1.stdio标准IO    

2.sysio系统IO

IO的两种实现方式正常都可以使用。但是,在使用的过程中优先使用stdio标准IO。

首先要了解这两种实现的原理:

1.sysio系统IO:我们作为USER 要与内核对话,那么系统为我们提供了一个sysio,可以直接对话KERNAL。

那么问题就产生了:如果USER使用的平台环境不一样(有的人有linux,有的人用windows),那么由于KERNAL不一样,那么提供给USER的sysio也会不一样

2.所以引申出来一个标准:标准IO  stdio标准IO

比如说:printf()函数我们会发现我们在做linux系统编程或者windows系统编程的时候,这个函数都可以用,他可以适合多种平台环境

所以标准IO的优点就是:移植性好、合并系统调用( 具有缓冲的机制,系统操作加速功能

另外,我们使用的标准IO sysio 是依赖于系统IO stdio的

例如:标准IO --fopen()函数在不同的平台依赖的系统IO函数也不一样: (linux) 依赖open(), (windows)依赖openfile() 

标准IO  stdio:(u-5)

文件的创建和关闭 

fopen();

fclose();

读写操作的内容涉及到读写 字符  字符串, 数据块等,所以涉及的函数主要有下面几个

fgetc();

fputc();

fgets();

fputs();

fread();

fwrite();

////////后面会讲printf函数族和scanf函数族/////// 

printf();

scanf();

对文件操作涉及到的文件位置指针:

fseek();

ftell();

rewind();

文件缓冲:

fflush()

tips:

FILE类型---是个结构体

我们可以查看man手册来查看各种命令以及IO操作的使用方法

man man

man X  函数

1:基本命令

2:系统调用

3:标准库

7:机制(socket  tcp epoll) 

文件IO与标准IO的区别:

标准IO具有缓冲机制 ,吞吐量大

文件IO速度快,实时性高

strace ./XXX可以查看可执行文件的系统调用

原文地址:https://www.cnblogs.com/muzihuan/p/4769983.html