size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream);参数:立即学习“C语言免费学习笔记(深入)”;ptr:指向缓冲区的指针">

c语言fread函数怎么用

来源:这里教程网 时间:2026-02-21 16:51:10 作者:

C 语言 fread() 函数的使用方法

fread() 函数用于从一个流中读取数据到一个缓冲区。它通常被用于从文件中读取二进制数据或结构化数据。

函数原型:

<code class="c">size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream);</code>

参数:

立即学习“C语言免费学习笔记(深入)”;

ptr
:指向缓冲区的指针,用于存储从流中读取的数据。
size
:每个元素的大小(以字节为单位)。
nmemb
:要读取的元素数量。
stream
:指向文件流的 FILE 结构指针。

返回值:

成功读取的元素数量(如果未发生错误)。 如果遇到错误,则返回 0。

使用方法:

    打开文件流。 分配一个足够大的缓冲区来存储读取的数据。 调用 fread() 函数,指定缓冲区、每个元素的大小、要读取的元素数量以及文件流。 检查 fread() 函数的返回值以查看是否成功读取了数据。如果返回值为 0,则发生了错误。

示例代码:

<code class="c">#include <stdio.h>
int main() {
    FILE *fp;
    int buffer[100];
    int size, nmemb;
    fp = fopen("data.bin", "rb");
    if (fp == NULL) {
        perror("Error opening file");
        return 1;
    }
    // 读取 100 个整数
    size = sizeof(int);
    nmemb = 100;
    if (fread(buffer, size, nmemb, fp) != nmemb) {
        perror("Error reading data");
        fclose(fp);
        return 1;
    }
    // 处理读取的数据
    for (int i = 0; i < nmemb; i++) {
        printf("%d\n", buffer[i]);
    }
    fclose(fp);
    return 0;
}</code>

相关推荐