Я пытаюсь прочитать шестнадцатеричную строку с прямым порядком байтов из двоичного файла и поместить это значение в целое число для работы с ним. Когда я пытаюсь читать, вместо числа я получаю символы ascii. Я пробовал литье и atoi, и ничего не работает. Как лучше всего использовать fstream для чтения шестнадцатеричной строки в целое число из файла?
Это по сути моя программа:
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main(int argc, char* argv[]) {
fstream input;
fstream output;
char cbuffer[4];
char revbuffer[8];
input.open(argv[1], fstream::binary | fstream::in);
output.open("output.txt", ios::out | ios::app);
input.seekg(16, input.beg);
input.read(cbuffer, 4);
cout << sizeof(revbuffer) << endl;
cout << cbuffer[0] << cbuffer[1] << cbuffer[2] << cbuffer[3] << endl;
}