[C con Clase] funcion para rellenar caracteres en string

Steven Davidson steven en conclase.net
Sab Ene 13 12:02:57 CET 2007


Hola Daniel,

El pasado 2007-01-12 20:36:43, daniel campos escribió:
 
dc> hola gente :
dc> alguien me puede decir una funcion para el dev cpp para rellenar caracteres a un string?
dc> por ejemplo tengo el string "pedro" y quiero convertiro en "00000pedro"

Creo que es más sencillo crear tu propia función para hacer esto. Por ejemplo,

char szMensaje[64] = "pedro";
char szResultado[256];

memset( szResultado, '0', 5 );
strcat( szResultado, szMensaje );

Si quieres rellenar con '0' exclusivamente, podrías usar 'sprintf()'. Por ejemplo,

sprintf( szResultado, "%010s", szMensaje );

Indicamos que la cadena tiene una "anchura" de 10 caracteres, pero si no alcanza esa cantidad, rellenamos con '0'.

Si estás usando C++, también podrías usar la clase 'stringstream' junto a los manipuladores 'setfill()' y 'setw()'. Por ejemplo,

stringstream ssResultado;

ssResultado << setfill( '0' ) << setw( 10 ) << szMensaje;

O si lo prefieres, sin manipuladores sería:

ssResultado.fill( '0' );
ssResultado.width( 10 )
ssResultado << szMensaje;


Espero que esto te sirva.

Steven


Más información sobre la lista de distribución Cconclase