C语言标准库函数fread用于从文件中读取数据。
函数原型为:
size_t fread(void *ptr, size_t size, size_t count, FILE *stream);
参数说明:
ptr
:指向要读取数据存储位置的指针;
size
:要读取的每个数据项的大小(以字节为单位);
count
:要读取的数据项的个数;
stream
:要读取的文件指针。
函数返回值为实际成功读取的数据项个数,如果出现错误或到达文件末尾,返回值可能小于count。
以下是一个使用fread函数读取文件的示例:
#include <stdio.h>int 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"模式即可。