C语言标准库函数fread用于从文件中读取数据。
函数原型为:
size_t fread(void *ptr, size_t size, size_t count, FILE *stream);
参数说明:
-
ptr
:指向要读取数据存储位置的指针; -
size
:要读取的每个数据项的大小(以字节为单位); -
count
:要读取的数据项的个数; -
stream
:要读取的文件指针。
函数返回值为实际成功读取的数据项个数,如果出现错误或到达文件末尾,返回值可能小于count。
以下是一个使用fread函数读取文件的示例:
#includeint main() { FILE *fp; char buffer[100]; // 打开文件 fp = fopen("file.txt", "rb"); if (fp == NULL) { printf("无法打开文件\n"); return 1; } // 读取数据 size_t result = fread(buffer, sizeof(char), sizeof(buffer), fp); if (result == 0) { printf("读取文件失败\n"); return 1; } // 输出读取的数据 printf("读取的数据是:%s\n", buffer); // 关闭文件 fclose(fp); return 0; }
在该示例中,首先通过fopen函数打开一个文件,然后使用fread函数从文件中读取数据。读取的数据存储在buffer数组中,读取的字节数为sizeof(char) * sizeof(buffer)。
最后,使用printf函数输出读取的数据,并使用fclose函数关闭文件。
需要注意的是,使用fread函数读取二进制文件时,需要使用"rb"模式打开文件;而读取文本文件时,使用"r"模式即可。