Ir ao conteúdo

Posts recomendados

Postado

void insere_termo (Mapa *mp, char *s){                                                               //Função insere termo ela deve inserir os termos do arquivo txt e deve possuir uma condicional se a palavra já tiver sido inserida chamar a função incrementa
    int i,Res;                                                                                       // inteiro para o controle do laço for
        if((mp->total % BLOCK == 0)&&(mp->total != 0)){                                              //condicional para verificar se os itens ultrapassaram o meu vetor de 10 posições
            mp->lista = (Item**)realloc(mp->lista,(BLOCK+10) * sizeof(Item*));                     //realocação se o numero de itens ultrapassa o valor de 10
                if(mp->lista == NULL){                                                               //condicional de realocação
                    printf("Erro de realocacao de memoria!");
                }
                    for(mp->total;mp->total<BLOCK;mp->total++){
                        mp->lista[mp->total] = (Item*) malloc(sizeof(Item));
                        mp->lista[mp->total]->conta = 0;
                        mp->lista[mp->total]->termo = NULL;
                    }
                mp->blocos++;                                                                            // incremento de blocos só ocorre se houver a realocação
           }                                                                                                //auxiliar para o comando for
            mp->lista[mp->total]->termo = (char*)malloc((strlen(s)+1) * sizeof(char));
                    if(mp->lista[mp->total]->termo == NULL){                                            //condicional para a alocação de memoria!
                        printf("Erro de alocacao de memoria!");
                    }
                     mp->lista[mp->total]->termo = s;                                               //s é colocado na lista na posição de mp->total
                     mp->lista[mp->total]->conta++;                                                 //contador do termo inserido é incrementado
                     mp->total++;                                                                   //total de itens é incrementado
}

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

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

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!