例如,如果我想使用 c++ 将数字(假设它是十六进制格式)写入二进制文件,
#include <fstream>
#include <iostream>
using namespace std;
int main()
{
int num = 0xabcd;
ofstream outfile("tmp.bin", ios::out | ios::binary);
outfile.seekp(0x8000, ios_base::beg);
outfile.write(num, sizeof(num));
return 0;
}
这个程序不会运行,因为ostream& write()
它只char* chars[]
作为它的第一个参数,而我需要将一个int
类型号写入num
二进制文件“tmp.bin”。
期望的结果是,当我以十六进制模式查看“tmp.bin”时,我可以看到ab cd
address 0x8000
。我想知道这是否可能,有人可以帮助我吗?非常感谢。