我会如何处理seekp的输入并将其与hex一起使用?像这样? Cin >> hex >> mychar;输入fstream :: seekp和fstream :: put
如何在十六进制中打印正确的值? 说在0x16字节是FF或255无符号的8位(小数?)当我这样做
fstream mystream;
mystream.seekp(0x16);
long myvar;
myvar=mystream.tellp();
cout<<"Value at offset 0x16: "<<myvar;
它打印22 IM,因为我以二进制方式打开该文件假设这就是为什么它打印22 FF值在二进制是像2222222等
是否有一个正确的数据类型打印在一定的偏移值(我试过很长的字符和整数,但仍然产量22.)或者我打印他们错了?我搜索谷歌,但无法找到这方面的帮助,但我注意到,打开二进制文件建议用十六进制编辑。
:
试试这个代码。 – adatapost
能否详细说明一下?所以我使用seekg设置偏移量? seekp是我一直在使用的seekg更适合?我如何设置它与cin.get()?像unsigned short myvar = cin.get();那么就输入十六进制? – Aquertu