将输入解释为十六进制数

时间:2013-03-06 16:57:09

标签: c++ hex ascii

我在尝试将输入解释为十六进制数时遇到了一些麻烦。例如,如果给出40A2的输入,并假设我有一个大小为2 16 的数组,我将如何访问以下示例?

arr[0x40A2] //this is simply accessing the array at binary 0100 0000 1010 0010 
              which is at index 16546

我只是遇到了一些麻烦,因为当程序收到用户的输入时,数字会被解释为ASCII值,需要被解释为十六进制值。

1 个答案:

答案 0 :(得分:2)

你如何阅读输入? C ++标准输入流理解std::hex modifier

unsigned int index;
std::cin >> std::hex >> index;