我有一个已分配的内存,我想将其写入文件。我怎样才能在 C++ 20 中做到这一点?
我知道我可以执行以下序列,就像在 C 中一样。但是,在 C++ 中有 std::filesystem
,我不能用它来做吗?
auto* const data = VirtualAlloc(nullptr, 0x1000, MEM_COMMIT | MEM_RESERVE, PAGE_EXECUTE_READWRITE);
if (!data)
return 0;
memcpy(...);
if (data)
VirtualFree(data, 0, MEM_RELEASE);
答案 0 :(得分:1)
以下是将内存写入文件的可靠方法:
// Open your output_file as binary
static const size_t DATA_CAPACITY = 0x1000;
output_file.write(data, DATA_CAPACITY);
这称为块写入二进制文件(或二进制模式的文件)。