Ir ao conteúdo
  • Cadastre-se

Tolrok

Membro Pleno
  • Posts

    62
  • Cadastrado em

  • Última visita

posts postados por Tolrok

  1. A sua função recursiva não tem condição de parada, você continua tentando copiar mesmo quando a função atinge uma folha, verifique se os filhos do nó não são NULL antes de chamar a recursão em cima deles.

    Nossa que bobeira que eu dei... hahaha

    Bom, obrigadão cara consegui ajeitar e compilar certinho.

    • Obrigado 1
  2. Eu recebi a seguinte arvore:

    struct arv
    {
    int info;
    struct arv* esq;
    struct arv* dir;
    };
    typedef struct arv Arv;

    e foi pedido para que eu faça uma função que copiei essa arvore para outra com o seguinte prototipo:

    Arv *copia(Arv *a);

    AVISO: A PARTIR DE AGORA O CODIGO FOI FEITO POR MIM!

    Então preparei uma main de teste:

    #include"arv.h"
    #include<stdio.h>

    int main (void)
    {
    Arv a, x, y,*b;
    x.dir=NULL;
    x.esq=NULL;
    y.dir=NULL;
    y.esq=NULL;
    x.info=3;
    y.info=4;

    a.dir=&x;
    a.esq=&y;
    a.info=1;

    b=copia(&a);

    return 0;
    }

    o arquivo arv.h:

    struct arv
    {
    int info;
    struct arv* esq;
    struct arv* dir;
    };
    typedef struct arv Arv;

    Arv *copia(Arv *a);

    E o arquivo arv.c:

    #include"arv.h"
    #include<stdlib.h>
    #include<stdio.h>

    Arv *copia(Arv *a)
    {
    Arv *b;
    b=(Arv *)malloc(sizeof(Arv));
    b->info=a->info;

    b->esq=copia(a->esq);
    b->dir=copia(a->dir);

    return b;
    }

    O visual studio, quando faço o chines, aponta um erro no "Arv *copia(Arv *a)", acho que estou alocando a arvore de uma maneira errada.

    É isso, agradeço a ajuda.

    • Amei 1

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

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!