Ir ao conteúdo
  • Cadastre-se

Dificuldade na interpretação da função.


Slafiq

Posts recomendados

Boa tarde, estou com muita dificuldade de entender a função abaixo:

char *strcat(char *string,char *string2){
char destino[200];
char *aux, *principal;

principal = destino;
aux = principal;

for( ; *string ; string++){
    *principal = *string;
    principal++;
}

for( ; *string2 ; string2++){
    *principal = *string2;
    principal++;
}

return aux;

}

Nao consigo entender o processamento dela principalmente o inicio dela que manipula a variável "principal" e "aux".

Poderiam me explicar por favor?

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Sugiro você estudar um pouco mais sobre ponteiros de memória para melhor compreensão da função ai...


Ele trabalhando diretamente com endereços de memória, aparentemente está concatenando uma string na outra.

Ele aponta o endereço de "principal" para "destino" e logo na sequência, aponta "aux" para "principal".


Ambas as 3 possuem o mesmo endereço de memória. Se uma mudar, a outra muda também.

 

Logo após, ele começa copiando caractere a caractere no valor do endereço de "principal" de acordo com a posição.

"destino" foi criada com 200 posições de memória e "principal" foi apontada para ela, logo "principal" possui acesso as 200 posições de memória.


Quando você faz: "principal++", você está indicando que está avançando uma posição de memória a qual "principal" está apontando, e quando ele iguala, ele copia este valor *string dentro do laço (que ele também avançou em string).

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!