Преобразование, которое я написал из шестнадцатеричного в десятичное число, работает, но получим немного неожиданный результат.
Ожидаемый результат: шестнадцатеричный номер "0000000F" и вывод в десятичном формате "15"
В моем случае
1], если "0000000F"HEX-значение и его преобразование равно "1532"
2], если "000000FF" - это значение HEX, а его преобразование - "25532"
Я не уверен, какая часть программирования неправильна? каждый раз, когда я получаю «32» после любого десятичного значения результата. Кто-нибудь может подсказать, как решить эту проблему?
#include <iostream>
using namespace std ;
#include <sstream>
int wmain() {
while(1)
{
int binNumber ;
unsigned int decimal;
string hexString = "0000000F"; //you may or may not add 0x before
stringstream myStream;
myStream <<hex <<hexString;
myStream >>binNumber;
cout <<binNumber <<decimal;
//return 0;
}
}