arácter @Hex a int en C ++

¿Cómo puedo cambiar un carácter hexadecimal, no una cadena, en un valor numérico?

Mientras escribía esta pregunta, encontré muchas respuestas sobre cómo convertir cadenas hexadecimales a valores. Sin embargo, ninguno funciona para los personajes. Recuerdo haber leído en alguna parte que esto funciona para cadenas:

std::string mystr = "12345";
unsigned int myval;
std::stringstream(mystr) >> std::hex >> myval;

Sin embargo, si lo hagomystr[x] en un bucle, este código no funcionará. He intentado agregar una nueva línea constd::string temp = mystr[x] y cambiandostd::stringstream(mystr) astd::stringstream(temp), pero eso tampoco funciona.

Entonces, ¿cómo debo hacer esto? Actualmente, estoy buscando a través de una cadena de caracteres hexadecimales "0123456789abcdef".find(mystr[x]);) y usando el índice para el valor. Sin embargo, dado que busca, es lento, incluso si solo busca entre 16 caracteres.

http: //ideone.com/dIyD

Respuestas a la pregunta(4)

Su respuesta a la pregunta