Если у вас есть следующий код:
cout << hex << 10;
Выходное значение равно 'a', что означает, что десятичное число 10 преобразуется в его шестнадцатеричное значение.
Однако, в коде ниже ...
int n;
cin >> hex >> n;
cout << n << endl;
Когда ввод равен 12, вывод становится 18. Может кто-нибудь объяснить детали преобразования? Как это стало десятичным значением?
Меня интересует момент, когда он стал int. Если разбить, это будет:
(( cin >> hex ) >> n);
Это правильно?