C++ fwrite
时间: 2023-11-14 13:09:31 浏览: 135
`fwrite` 是 C++ 中的一个函数,用于将数据块写入文件。它的函数原型如下:
```c++
size_t fwrite(const void *ptr, size_t size, size_t count, FILE *stream);
```
其中,`ptr` 是指向要写入的数据块的指针,`size` 是每个数据块的大小,`count` 是要写入的数据块的数量,`stream` 是指向要写入的文件的指针。函数返回值是实际写入的数据块数量。
例如,下面的代码将一个字符串写入文件:
```c++
#include <cstdio>
int main() {
FILE *fp = fopen("test.txt", "w");
const char *str = "Hello, world!";
fwrite(str, sizeof(char), strlen(str), fp);
fclose(fp);
return 0;
}
```
这个程序将字符串 `"Hello, world!"` 写入了文件 `"test.txt"` 中。
相关问题
c++ fwrite
fwrite函数是C语言中用于将数据写入文件的函数。它的原型如下:
```c
size_t fwrite(const void *ptr, size_t size, size_t count, FILE *stream);
```
该函数将指定的数据块写入到文件流stream中。参数ptr是数据块的起始地址,size是每个数据项的大小(以字节为单位),count是要写入的数据项的个数。函数返回实际写入的数据项个数。
例如,下面的代码将一个整型数组写入到文件中:
```c
#include <stdio.h>
int main() {
int arr[] = {1, 2, 3, 4, 5};
FILE *file = fopen("data.txt", "wb");
if (file != NULL) {
size_t items_written = fwrite(arr, sizeof(int), sizeof(arr) / sizeof(int), file);
printf("%zu items written\n", items_written);
fclose(file);
}
return 0;
}
```
这段代码将整型数组arr写入到名为"data.txt"的文件中,每个整数占用4个字节。fwrite函数返回值等于sizeof(arr) / sizeof(int),即写入的数据项个数。
C++ fwrite函数
`fwrite` 函数是 C/C++ 标准库中的一个函数,用于将数据块写入到文件中。它的定义如下:
```c++
size_t fwrite(const void *ptr, size_t size, size_t count, FILE *stream);
```
其中,`ptr` 是指向要写入数据的指针,`size` 是每个数据块的字节数,`count` 是要写入的数据块数量,`stream` 是要写入数据的文件指针。
`fwrite` 函数的返回值是成功写入的数据块数量,如果返回值小于 `count`,则意味着写入失败或者出错。
下面是一个示例代码:
```c++
#include <stdio.h>
int main()
{
FILE *fp;
char str[] = "Hello, world!";
int len = sizeof(str);
fp = fopen("test.txt", "wb");
if (fp == NULL) {
printf("Failed to open file.\n");
return 1;
}
int n = fwrite(str, sizeof(char), len, fp);
printf("Wrote %d bytes to file.\n", n);
fclose(fp);
return 0;
}
```
在这个示例中,我们打开一个名为 `test.txt` 的二进制文件,然后使用 `fwrite` 函数将一个字符串写入到文件中。最后关闭文件并输出写入的字节数量。
阅读全文