Função recursiva para inverter um vetor de caracteres

Publicado por Kleber de Andrade Reis em 04/11/2004

[ Hits: 29.836 ]

 


Função recursiva para inverter um vetor de caracteres



Olá galera!

Achei interessante postar isso aqui para ajudar no conhecimento daqueles que estão iniciando o estudo em C. Esse código faz a inversão de um vetor de caracteres usando uma função recursiva.

#include

void inv(char *string)
{
if(*string)
{
inv(string+1);
putchar(*string);
}
}
int main()
{
inv("kleber");
return 0;
}
Outras dicas deste autor

Ocorrência de uma string em outra

Desligando Slackware com fonte ATX automaticamente

Conversão vetor de caracteres para double

Leitura recomendada

Como Converter uma String em Char Array em C++

Classes para vários tipos (templates)

Mais um curso de linguagem C

Site com questões de programação

Switch em C, e se a opção for inválida?

  

Comentários
[1] Comentário enviado por kandrade em 05/11/2004 - 08:10h

Desculpem galera.....eu sou novo por aqui.......eu deveria comentar o programa.........

então vamos lá.......na ordem de execução........

obs.: eu mudei o nome do parametro da função inv para uma melhor compreensão...........

int main()
{
inv("linux"); //quando vc chama a função inv passando uma string
//ela atribui ao ponteiro str o endereço de memória
//do primeiro caracter da string.....nesse caso 'l'
return 0;
}

void inv(char *str)
{
if(*str) //se o conteúdo do ponteiro "*str" for diferente de 0..........
{
inv(str+1); //soma 1 na posição de memória
//o programa chama a função novamente
//o endereço do proximo caracter como parametro
putchar(*str); //quando ele sair de if terminando assim
//a função ele vai retornando os caracteres
//pendentes e é assim q ele mostra o inverso...
}
}

[2] Comentário enviado por jochan em 14/12/2005 - 14:44h

Muito legal, vai me ajudar bastente no meu projeto de C++ ... =)



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts