轻松掌握fwrite函数

函数的基本概念

之前我们说过 fread 函数,用于从文件中读取数据。今天来说说 fwrite 函数,它用于向文件中写入数据,和 fread 一个用于读,一个用于写,搭配使用。

在C语言中,fwrite 是一个用于向文件中写入数据的函数。它允许你将内存中的数据快速地写入到文件中,非常高效。

size_t fwrite(const void *buffer, size_t size, size_t count, FILE *stream);
  • buffer指向要写入数据的内存区域的指针。就好比是装着你要搬运的数据的箱子。
  • size每个数据元素的大小,以字节为单位。相当于告诉函数每个数据项占多少空间。
  • count要写入的数据元素的数量。也就是说,要搬运多少个这样的数据项。
  • stream:指向 FILE 对象的指针,表示要写入数据的文件

返回值:返回成功写入的数据元素的数量。如果这个值小于你期望的 count,可能是因为文件空间不足或者发生了其他错误。

使用示例

假设我们有一个整数数组,我们要把这些整数写入到一个文件中:

#include <stdio.h>

int main() {
    FILE *file = fopen("output.bin", "wb"); // 以二进制写入模式打开文件
    if (file == NULL) {
        printf("Cannot open file");
        return 1;
    }

    // 要写入的具体数据
    int data[] = {10, 20, 30, 40, 50};
    // 计算要写入的数组元素的数量
    size_t count = sizeof(data) / sizeof(data[0]); 

    // 将数组中的数据写入文件
    size_t result = fwrite(data, sizeof(int), count, file);

    if (result == count) {
        printf("All data have been written to the file successfully!");
    } else {
        printf("Error writing data to the file.");
    }

    // 关闭文件
    fclose(file);

    return 0;
}

写完后注意检查返回值,看看是不是和你期望写入的数量一样。要是小于,那可能出问题了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值