El pequeño programa de prueba a continuación imprime:¿Cómo se utiliza un manipulador para dar formato a mi producción hexagonal con ceros izquierda acolchados
y el número de SS es = 3039
Me gustaría que el número de imprimir con acolchado ceros a la izquierda de tal manera que la longitud total es de 8. Por lo tanto:
y el número de SS es = 00003039 (nótese los ceros adicionales que quedan acolchada)
y me gustaría saber cómo hacer esto utilizando manipuladores y un stringstream como mostrado a continuación. ¡Gracias!
El programa de pruebas:
#include <iostream>
#include <sstream>
#include <string>
#include <vector>
int main()
{
int i = 12345;
std::stringstream lTransport;
lTransport << "And SS Number IS =" << std::hex << i << '\n';
std::cout << lTransport.str();
}
Si soy agregar cosas antes y después del h formateado por ejemplo, ¿cómo afectan el relleno y el ancho a las cosas? ¿Hay alguna forma de que solo se apliquen al hex formado y no a todo el stringstream? – bbazso
Edité mi respuesta para agregar el código. Espero que funcione para ti. Oh! Parece que "Let_Me_Be" me ganó. –
Después de configurar los formateadores y escribir en el stringstreamm para el entero, puede reajustar el setw() y setfill() como desee. Alternativamente, también podría preformatear una cadena c usando sprintf (char_buf, '% 08X', i) y escribirla en la cadena de caracteres. –