Linux系统编程之标准I/O

本文详细介绍了标准I/O的基本概念,包括文件的打开与关闭、不同模式下的操作特性,以及字符和字符串的读写方法。深入解析了printf和scanf函数族的使用,探讨了文件位置指针和缓冲区管理,并简要提及了临时文件的创建。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、标准I/O介绍

 

2、标准I/O的常用函数

2.1 文件的打开和关闭

// 文件的打开
// 返回值:成功返回FILE *类型的指针,失败返回NULL
FILE *fopen(const char *path, const char *mode);

 参数mode:

modedescription
r

① 以只读的方式打开文件

② 若文件不存在会报错

③ 文件位置指针被定位在文件首

r+

① 以读写的方式打开文件

② 若文件不存在会报错

③ 文件位置指针被定位在文件首

w

① 以只写的方式打开文件

② 若文件已经存在则截断(Truncate) ,若文件不存在则创建该文件

③ 文件位置指针被定位在文件首

w+

① 以读写的方式打开文件

② 若文件已经存在则截断(Truncate) ,若文件不存在则创建该文件

③ 文件位置指针被定位在文件首

a

① 以追加(appending)的方式打开文件(只写)

② 若文件不存在则创建该文件

③ 文件位置指针被定位在文件尾

a+

① 以读和追加(appending)的方式打开文件

② 若文件不存在则创建该文件

③ 读的初始文件位置指针在文件首,写永远是文件尾(每次写都会将其定位到尾部)

b

the 'b' is ignored on all POSIX conforming systems, including Linux.(man手册中的解释) 

这个参数在Linux上系统上是无意义的,这个参数用在Windows中用于区分文本文件和二进制文件。

 

// 文件的关闭
// 返回值:成功返回0,失败返回EOF
int fclose(FILE *fp);

使用fopen打开的文件不要忘记使用fclose关闭,否则会造成资源泄露。 

2.2 字符和字符串的读写

 

2.3 printf和scanf函数族

 

2.4 文件位置指针

 

2.5 文件缓冲

 

2.6 临时文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值