Alguém sabe me dizer se o C possui algo assim? Ou já viu algo que dê pra fazer isso?
Meu código que estou tetando fazer:
[codebox] void PadLeft(char *charPrencher, char *charDestino, char *charOrigem, int total) { int i; int j; //preencher antes do valor enviado for(i=0;i < (total - (int)strlen(charOrigem)); i++) { *charDestino = charPrencher; charDestino++; }
//depois juntar com os dados enviados for(j=0; j < strlen(charOrigem); j++) { charDestino++; *charDestino = *charOrigem; charOrigem++;
} } //onde: //charPrencher = char que será acrescido antes (zero no exemplo) //charDestino = o novo valor 00055 depois de processado //charOrigem = 55 //total = tamanho total de caracteres que irá ter para montar a quantidade de caracteres a esquerda (no exemplo 5)
Pergunta
Marcia Rosa
Senhores,
Venho recorrer a ajuda de vocês novamente pois estou a dois dias quebrando a cabeça e ainda não consegui resolver meu problema.
No C# quando eu preciso alocar valores a esquerda eu uso PadLeft. Exemplo:
Alguém sabe me dizer se o C possui algo assim? Ou já viu algo que dê pra fazer isso?
Meu código que estou tetando fazer:
void PadLeft(char *charPrencher, char *charDestino, char *charOrigem, int total)
{
int i;
int j;
//preencher antes do valor enviado
for(i=0;i < (total - (int)strlen(charOrigem)); i++)
{
*charDestino = charPrencher;
charDestino++;
}
//depois juntar com os dados enviados
for(j=0; j < strlen(charOrigem); j++)
{
charDestino++;
*charDestino = *charOrigem;
charOrigem++;
}
}
//onde:
//charPrencher = char que será acrescido antes (zero no exemplo)
//charDestino = o novo valor 00055 depois de processado
//charOrigem = 55
//total = tamanho total de caracteres que irá ter para montar a quantidade de caracteres a esquerda (no exemplo 5)
Qualquer dica é bem vinda.
Obrigada.
Editado por Marcia RosaLink para o comentário
Compartilhar em outros sites
6 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.