Tengo este código de ejemplo (incorrecto) para obtener un valor de stringstream y almacenarlo en una variable de tamaño byte (debe estar en una var de byte único, no en una int) :Obtener un valor de bytes utilizando stringstream
#include <iostream>
#include <sstream>
using namespace std;
int main(int argc, char** argv)
{
stringstream ss("1");
unsigned char c;
ss >> c;
cout << (int) c << endl;
}
La salida cuando ejecuto esto es 49, que no es lo que me gustaría ver. Obviamente, esto se trata como un char y no como un simple valor numérico. ¿Cuál es la forma más C++ ish de que c tenga un 1 en lugar de un 49 cuando se convierte en un int?
Gracias!
Tratar la cadena: "\ 01". O configure una matriz de caracteres e inicialice con {1, 0} –