gpt4 book ai didi

c++ - 将原始数据写入文件并使用 bin2c

转载 作者:行者123 更新时间:2023-11-27 23:24:20 27 4
gpt4 key购买 nike

好吧,我是 C++ 的新手,我遇到了一个程序,它可以将 exe 或 bin 文件放入 .h 文件中,以便与 C++ 一起使用。我遇到的问题是如何将 bin2c genarats 的原始数据写入文件,然后重现相同的 exe。您可以在下面找到原始数据的代码。 (使用 cygwin 编译。)我不在 PC 上,所以我无法使用代码标签来显示代码抱歉。

const unsigned char raw_data[] = {
    0x21, 0x20, 0xc2, 0xa6, 0xc3, 0xb4, 0xc2, 0xbf,
    0xc3, 0x82, 0xc3, 0x8b, 0xc2, 0xa4, 0x20, 0xc3,
    0x8d, 0xc3, 0x8c, 0x4c, 0x3f, 0x20, 0x20, 0xc3,
    0x80, 0xc3, 0xbf, 0x20, 0x20, 0xc3, 0x80, 0xc3,
    0xbf, 0xc2, 0xa5, 0x20, 0xc5, 0xa1, 0xe2, 0x84,
    0xa2, 0xc2, 0xa9, 0x40, 0x20, 0x20, 0xc3, 0x80,
    0xc3, 0xbf, 0x20, 0x20, 0xc3, 0x80, 0xc3, 0xbf,
    0x60, 0x20, 0x6f, 0x72, 0x20, 0x60, 0x21, 0x20,
    0x48, 0xc2, 0xb7, 0xc3, 0xb4, 0xc2, 0xbf, 0xc3,
    0x82, 0xc3, 0x8b, 0xc2, 0xa4, 0x20, 0xc3, 0x8d,
    0xc3, 0x8c, 0x4c, 0x3f, 0x20, 0x20, 0xc3, 0x80,
    0xc3, 0xbf, 0x33, 0x33, 0x33, 0x3f, 0xc2, 0xa5,
    0x20, 0xc5, 0xa1, 0xe2, 0x84, 0xa2, 0xc2, 0xa9,
    0x40, 0x20, 0x20, 0xc3, 0x80, 0xc3, 0xbf, 0x66,
    0x66, 0xc2, 0xa6, 0x40, 0x0a,
};

最佳答案

使用标准的 C++ I/O 体操:

#include <fstream>

std::ofstream outfile("output.bin", std::ios::binary);

if (!outfile) { /* error, die! */ }

outfile.write(reinterpret_cast<char const *>(raw_data), sizeof raw_data);

如果愿意,您可以只将数组声明为 const char 数组并取消强制转换。

关于c++ - 将原始数据写入文件并使用 bin2c,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10472795/

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