Ir ao conteúdo

C <suporte pra explicar o que esta acontecendo no codigo, se possivel com esquema>


Posts recomendados

Postado

void XYZ(TLISTA *pLista)

{

        struct TNO *aux1, *aux2;

 

        if ((*pLista) != NULL)

        {

        aux1 = (*pLista);

 

        if (aux1->prox == NULL)

        {

             free(aux1);              

             (*pLista) = NULL;

        }

        else

        {

            while (aux1->prox->prox != NULL)   

            {                              

                 aux1 = aux1->prox;

            }

            aux2 = aux1->prox;

            aux1->prox = NULL;

            free(aux2);     

 

        }

}}

Postado

Esse código remove o último elemento de uma lista encadeada:

void XYZ(TLISTA *pLista)
{
        struct TNO *aux1, *aux2;
        
        if ((*pLista) != NULL) 
        {
        aux1 = (*pLista); //aux1 aponta para o comeco da lista
 
        if (aux1->prox == NULL) //verifica se existe outro elemento alem do primeiro na lista
        {
             //caso a lista so tenha um elemento, apague este elemento 
             free(aux1);              
             //agora a lista toda nao tem nenhum elemento
             (*pLista) = NULL;
        }
        else
        {  
            //caso a lista tenha outros elementos, percorre ela ate o penultimo 
            while (aux1->prox->prox != NULL)   
            {                              
                 aux1 = aux1->prox;
            }
            //apos o laco, aux1 deve connter o penultimo elemento
            aux2 = aux1->prox; //faz aux2 apontar para o ultimo elemento
            //remove o ultimo da lista
            aux1->prox = NULL;
            //apaga o ultimo elemento da memoria.
            free(aux2);     
 
        }
}}

 

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

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...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!