Ir para conteúdo
Fórum Script Brasil
  • 0

Problema ao Inverter String, Lixo Aparece


Raoni

Pergunta

O programa recebe uma frase e em seguida a inverte, ele tem funcionado o problema é que ocasionalmente ele coloca algum lixo no final da frase invertida. Será que alguém sabe o motivo? Coloquei prints

Programa Ok:

inverte.jpg

Mesmo programa mas desta vez não funciou corretamente:

inverte2.jpg

main()
{
      char normal[200], invertido[200];
      int i, conta;
      system ("cls");
      printf("Digite para mostrar de tras para frente:\n\n");
      gets(normal);
      conta  = strlen(normal)-1;
      for (i=0; i < strlen(normal); i++)
        { 
          invertido[i]=normal[conta];
          conta = conta - 1;
        } 
      printf("\nEscrito de tras para frente ficara:\n\n %s ",invertido);     
      getch();
}

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Olá Raoni,

Fazer "i <= strlen(normal)" copiou o terminador pra variavel "invertida".

Isso resolveu seu problema, mas é bom você lembrar que as funções que tratam strings identificam o final delas pelo terminador (barra zero).

Exemplo:

(estou colocando como /0 pra poder aparecer no texto, mas o correto é a barra invertida)

|F|r|a|s|e| |t|e|s|t|e| |2|/0|

A função strlen considera o fim da string quando encontra o /0.

Da mesma forma a função função printf exibe os caracteres na string até encontrar o terminador.

Abs

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...