Si tuviera un buffer como:Conseguir un búfer en un stringstream en representación hexadecimal:
uint8_t buffer[32];
y estaba lleno por completo con los valores, cómo podría conseguir en un stringstream, en representación hexadecimal, con 0-relleno en valores pequeños?
Traté:
std::stringstream ss;
for (int i = 0; i < 32; ++i)
{
ss << std::hex << buffer[i];
}
pero cuando tomo la cadena fuera de la stringstream, tengo un problema: bytes con valores < 16 sólo tienen un carácter para representar, y me gustaría que fueran 0 acolchado.
Por ejemplo, si los bytes 1 y 2 en la matriz fueron {32} {4} mi stringstream tendría:
204 instead of 2004
¿Puedo aplicar formato a la stringstream para añadir el 0-relleno de alguna manera? Sé que puedo hacer esto con sprintf, pero las transmisiones ya están siendo utilizadas para mucha información y sería de gran ayuda para lograr esto de alguna manera.
¿Por qué pones "correctamente" en el título? ¿Pensaste lo contrario, solo obtendrías una respuesta correcta? Los títulos deben ser contundentes y significativos ... –
Ahí, maté la palabra por ti: p –