c语言写入文件fwrite
时间: 2024-09-18 09:02:38 浏览: 48
C语言实现按行读写文件
5星 · 资源好评率100%
`fwrite()`函数是C语言标准库中的一个用于将数据块写入到二进制文件中的函数,它属于`stdio.h`头文件。这个函数的基本原型如下:
```c
size_t fwrite(const void *ptr, size_t size, size_t num, FILE *stream);
```
参数说明:
- `ptr`: 需要写入文件的数据指针,通常是一个指向数组的指针。
- `size`: 单个元素的字节数。
- `num`: 要写入的元素数量。
- `stream`: 文件指针,通过`fopen()`打开的文件描述符。
`fwrite()`的返回值是实际写入的元素数量,如果所有指定的数量都成功写入,返回值等于`num`;若遇到错误则返回一个小于`num`的值。
一个简单的例子演示如何使用`fwrite()`:
```c
#include <stdio.h>
int main() {
const char* data = "Hello, World!";
FILE* file = fopen("example.txt", "wb"); // "wb"表示二进制写模式
if (file == NULL) {
perror("Failed to open file");
return 1;
}
size_t bytes_written = fwrite(data, sizeof(char), strlen(data) + 1, file); // 加1是因为包括结束符'\0'
fclose(file);
if (bytes_written != strlen(data) + 1) {
perror("Error writing to file");
return 1;
}
printf("Data written successfully.\n");
return 0;
}
```
在这个示例中,我们首先打开一个文件,然后写入了一个字符串,并关闭文件。记得处理可能出现的文件操作错误。
阅读全文