我會如何處理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