admin 管理员组

文章数量: 887829


2024年1月5日发(作者:厚能组什么词语)

c语言文件读写函数

C语言提供了一些文件读写函数,可以方便地读写文件数据。本文将对这些函数进行介绍,并且给出一些示例代码。

1. fopen()

fopen()函数用于打开一个文件,并返回指向该文件的指针。函数原型如下:

FILE *fopen(const char *filename, const char *mode);

参数filename是要打开的文件名,参数mode是打开文件的模式,可以是"r"(只读)、"w"(只写)、"a"(追加只写)、"rb"(二进制只读)、"wb"(二进制只写)和"ab"(二进制追加只写)等。

示例代码:

//打开文件

FILE *fp = fopen("", "r");

//读文件

char buf[1024];

fgets(buf, 1024, fp);

//关闭文件

fclose(fp);

2. fread()

fread()函数用于从文件中读取数据。函数原型如下:

size_t fread(void *ptr, size_t size, size_t count, FILE *stream);

参数ptr是指向要读取数据的缓冲区的指针,参数size是每个数据项的大小,参数count是要读取的数据项的数量,参数stream是要读取的文件指针。

示例代码:

//打开文件

FILE *fp = fopen("", "rb");

//读取二进制数据

int buf[10];

fread(buf, sizeof(int), 10, fp);

//关闭文件

fclose(fp);

3. fwrite()

fwrite()函数用于向文件中写入数据。函数原型如下:

size_t fwrite(const void *ptr, size_t size, size_t count, FILE

*stream);

参数ptr是指向要写入数据的缓冲区的指针,参数size是每个数据项的大小,参数count是要写入的数据项的数量,参数stream是要写入的文件指针。

示例代码:

//打开文件

FILE *fp = fopen("", "wb");

//写入二进制数据

int buf[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};

fwrite(buf, sizeof(int), 10, fp);

//关闭文件

fclose(fp);

4. fseek()

fseek()函数用于在文件中定位。函数原型如下:

int fseek(FILE *stream, long int offset, int whence);

参数stream是要定位的文件指针,参数offset是要移动的字节数,参数whence指定了移动的相对位置,可以是SEEK_SET(从文件头开始)、SEEK_CUR(从当前位置开始)和SEEK_END(从文件末尾开始)。

示例代码:

//打开文件

FILE *fp = fopen("", "rb");

//定位到第5个整数之后

fseek(fp, 4 * sizeof(int), SEEK_SET);

//关闭文件

fclose(fp);

5. ftell()

ftell()函数用于获取文件当前位置。函数原型如下:

long int ftell(FILE *stream);

参数stream是要获取位置的文件指针。

示例代码:

//打开文件

FILE *fp = fopen("", "rb");

//获取当前位置

long int pos = ftell(fp);

//关闭文件

fclose(fp);

6. fclose()

fclose()函数用于关闭文件。函数原型如下:

int fclose(FILE *stream);

参数stream是要关闭的文件指针。

示例代码:

//打开文件

FILE *fp = fopen("", "r");

//关闭文件

fclose(fp);

以上就是C语言文件读写函数的介绍和示例代码。通过这些函数,我们可以方便地读写文件数据,实现各种功能。


本文标签: 文件 函数 参数 指针 数据