关于标准io那些事

1.IO:

input output  linux下读写文件的方式

2.流:

stream  标准io的操作对象 是描述文件信息的结构体

3.基本操作

打开-读写-关闭

        3.1 文件打开

        #include <stdio.h>

        FILE *fopen(const char *path, const char *mode); // const char* 保护实参不被修改

        //*path= //错  *path是常量  不能放到赋值符号左侧

       功能:打开或创建并打开 文件

       参数:

                path 文件名(包含路径:绝对路径或者相对路径)

                mode:文件打开的方式

            r:以只读方式打开 文件必须已存在

            r+:以读写方式打开 文件必须已存在

            w:以只写方式打开 如果不存在 则创建并打开 存在则清空并打开

            w+:以读写方式打开 如果不存在 则创建并打开 存在则清空并打开      

            a:以追加写的方式打开 如果文件不存在 则创建并打开

            a+:以追加读写的方式打开 如果文件不存在 则创建并打开                   

       返回值:成功返回FILE* 类型指针(文件流指针) ,失败返回NULL

        3.2 错误提示 

        #include <stdio.h>

       void perror(const char *s);

       功能:返回上一个函数的错误信息

       参数:实际错误信息

        3.3 标准文件

        程序运行时 系统自动打开3个流   

        标准输入 从标准输入取数据 默认是键盘  stdin    --FILE * stdin

        标准输出  向标准输出设备输出 默认是显示器  stdout  ---FILE *stdout

        标准错误输出  向标准错误输出设备输出 默认是显示器  stderr  --FILE *stderr   

        3.4 按行读取

         #include<stdio.h>

         char *fgets(char *s, int size, FILE *stream);

        功能:从文件中读取一行

        参数

                    s:读取的数据存放的位置

                    size:最多读多大 实际最多能读到的有效字符 size-1个字节

                    stream:从stream文件中读取一行

        如果size<行字节数 实际读取有效字符size-1   剩下的字符需要循环读取 直到’\n’

        如果size>行字节数  实际读到一行(遇到’\n’停止)

        返回值:

        成功 返回读到的数据

        失败或者到文件结尾 返回NULL

      

        3.5 地址上数据清零

        #include <strings.h>

       void bzero(void *s, size_t n);

       功能:将地址s的前n个字节清零

        3.6 向文件中写入一行数据

          #include<stdio.h>

         int fputs(const char *s, FILE *stream);

         功能:向文件中写入一行

         参数:

                     s:存放要写入文件的字符串

                     stream:要写入的件

         返回值:

                         成功:返回非负数

                         失败:返回EOF       //EOF是文件结束标志 #define EOF -1      \0

        3.7 关闭文件

        #include <stdio.h>

       int fclose(FILE *fp);// fclose(fp);

       功能:关闭文件

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值