gpt4 book ai didi

c++ - 使用 C 和 C++ 写入文件

转载 作者:行者123 更新时间:2023-11-30 18:07:34 25 4
gpt4 key购买 nike

当我尝试使用 C 编写文件时; fwrite 接受 void 类型作为数据,它不会被文本编辑器解释。

struct index
{
index(int _x, int _y):x(_x), y(_y){}
int x, y;
}

index i(4, 7);

FILE *stream;
fopen_s(&stream, "C:\\File.txt", "wb");
fwrite(&i, sizeof(index), 1, stream);

但是当我尝试使用 C++ 时; ofstream 以二进制方式write,可读。为什么它与使用 fwrite 编写的内容不同?

最佳答案

这是在C++中使用流写入二进制数据的方法:

struct C {
int a, b;
} c;

#include <fstream>
int main() {

std::ofstream f("foo.txt",std::ios::binary);
f.write((const char*)&c, sizeof c);
}

这将以与fwrite相同的方式保存对象。如果它不适合您,请通过流发布您的代码 - 我们会看看出了什么问题。

关于c++ - 使用 C 和 C++ 写入文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4420462/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com