Linux下的fopen fread fwrite fclose fseek函数

  1. fopen()函数
    功能:用于打开文件。
    所需头文件:#incldue<stdio.h>
    函数原型:FILE * fopen(const char *pathname, const char *method);

    参数
    pathname:被打开文件的文件路径以及文件名。
    method:打开文件的方式。
    具体方式如下
    “r" 或 ”rb" 以只读方式打开文件。
    “w" 或 ”wb" 以写方式打开文件,新内容会覆盖原本内容。
    “a” 或 “ab” 以写方式打开文件,新内容追加在文件末尾。

    返回值:文件打开成功,指向该文件指针就会被返回。如果文件打开失败则返回NULL。

  2. fread()函数
    功能:用于读取数据。
    函数原型:int fread ( void *buffer, int size,int count, FILE *stream) ;

    参数
    buffer:用于接收数据的内存地址。
    size:要读写的单字节数,单位是字节。
    count:要读取多少个数据。
    stream:指向要读取文本的指针。

    返回值:返回实际读取的数据的个数,应返回值与count相同。

  3. fwrite()函数
    功能:向一个文本写入数据。
    函数原型:int fwrite ( void *buffer, int size,int count, FILE *stream) ;

    参数
    buffer: 一般要写入的数据,事先先写到缓存buffer中,当需要写入文本时,数据从此一个个写入。
    size: 要写入内容的单字节数。
    count: 写入数据的个数。
    stream: 目标文本指针,即要存在那个文本中。

    返回值: 返回写入数据的个数。

  4. fclose()函数
    功能: 关闭一个流。
    函数原型: int fclose( FILE *file )

    返回值: 如果流成功关闭,fclose 返回 0,否则返回-1。

  5. fseek()函数
    功能: 它在文件流里为下一次读写操作指定位置。
    函数原型: int fseek(FILE *stream, long offset, int fromwhere);

    参数:
    stream: 文件指针。
    offset: 偏移量,就是相当于当前位置,向左(右)移动几位。正数表示右向偏移,负数表示左向偏移。
    fromwhere: 定义文件中哪里开始偏移,取值可为:SEEK_CUR(当前位置)、 SEEK_END (文件结尾)或 SEEK_SET(文件开头)。
    其中SEEK_SET,SEEK_CUR和SEEK_END依次为0,1和2。

    返回值: 如果执行成功,函数返回0。如果执行失败,函数返回一个非0值。

1. fopen函数原型: ```c FILE *fopen(const char *filename, const char *mode); ``` 使用说明: - filename:文件名,可以是相对路径或绝对路径,需要包含文件扩展名。 - mode:访问模式,可以是 `"r"`(只读)、`"w"`(只写)、`"a"`(追加)、`"rb"`(二进制只读)、`"wb"`(二进制只写)、`"ab"`(二进制追加)等。 返回值: - 成功打开文件返回指向该文件的指针。 - 打开文件失败返回 `NULL`。 2. fclose函数原型: ```c int fclose(FILE *stream); ``` 使用说明: - stream:打开文件的指针。 返回值: - 关闭文件成功返回 0。 - 关闭文件失败返回非 0 值。 3. fread函数原型: ```c size_t fread(void *ptr, size_t size, size_t count, FILE *stream); ``` 使用说明: - ptr:指向要读取数据的缓冲区。 - size:每个数据项的字节数。 - count:要读取的数据项数。 - stream:打开文件的指针。 返回值: - 返回实际读取的数据项数,如果该值小于 count,则可能是读取到了文件末尾或者发生了错误。 4. fwrite函数原型: ```c size_t fwrite(const void *ptr, size_t size, size_t count, FILE *stream); ``` 使用说明: - ptr:指向要写入数据的缓冲区。 - size:每个数据项的字节数。 - count:要写入的数据项数。 - stream:打开文件的指针。 返回值: - 返回实际写入的数据项数,如果该值小于 count,则可能是因为磁盘已满或者发生了错误。 5. fseek函数原型: ```c int fseek(FILE *stream, long offset, int whence); ``` 使用说明: - stream:打开文件的指针。 - offset:偏移量,可以是正数或负数,如果是负数则表示向文件开头偏移。 - whence:偏移的位置,可以是 `SEEK_SET`(文件开头)、`SEEK_CUR`(当前位置)、`SEEK_END`(文件结尾)。 返回值: - 执行成功返回 0。 - 执行失败返回非 0 值。 使用注意事项: - 在使用文件 I/O 函数时,需要先打开文件,处理完后再关闭文件。 - 在使用 freadfwrite 函数时,需要注意缓冲区的大小,避免溢出。 - 在使用 fseek 函数时,需要注意偏移量的取值范围,避免越界访问文件。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值