我在尝试将输入解释为十六进制数时遇到了一些麻烦。例如,如果给出40A2
的输入,并假设我有一个大小为2 16 的数组,我将如何访问以下示例?
arr[0x40A2] //this is simply accessing the array at binary 0100 0000 1010 0010
which is at index 16546
我只是遇到了一些麻烦,因为当程序收到用户的输入时,数字会被解释为ASCII值,需要被解释为十六进制值。
答案 0 :(得分:2)
你如何阅读输入? C ++标准输入流理解std::hex
modifier:
unsigned int index;
std::cin >> std::hex >> index;