Ir ao conteúdo
  • Cadastre-se

brCode

Membro Júnior
  • Posts

    3
  • Cadastrado em

  • Última visita

Reputação

0
  1. brCode

    Cadastro em c - tad

    Visualizei a ideia que você demonstrou na modificação do projeto. No caso a minha ideia era dentro do método main criar uma lista de contatos usando também alocação dinâmica de memória, seguindo o mesmo raciocínio da lista de telefones e e-mails. Talvez eu não tenha deixado isso claro na explicação. Para não tomar muito o seu tempo, já que já está me ajudando bastante com sua explicação, vamos considerar então o modo que você fez , definindo um vetor de Contatos(sem alocação dinâmica). Completei apenas o código no método inserirContato seguindo as suas orientações, conforme demonstrado abaixo. Não sei se fiz algo errado ou se seria algum problema no aplicativo CodeBlocks referente ao compilador mas está aparecendo um erro durante a execução do programa. O erro aparece no arquivo contatos.h na linha #include “StrCol.h”. Não entendi o por quê deste erro . Vide o anexo. Se você puder demonstrar como ficaria o método genérico listar do arquivo StrCol.c, fico grato também. #include <stdio.h> #include "contatos.h" #include "StrCol.h" void inserirContato( Contato c ){ //Escanear nome e guardar em c.nome //Inserir na lista de telefones //Inserir na lista de emails char nome[50]; char tel[20]; char email[50]; printf("Insira o seu nome : "); gets(nome); inserir_na_lista(&c.nome, nome); printf("Insira o seu telefone : "); gets(tel); inserir_na_lista(&c.tels, tel); printf("Insira o seu e-mail : "); gets(email); inserir_na_lista(&c.emails , email); }
  2. brCode

    Cadastro em c - tad

    O projeto é constituído desses três arquivos de forma idêntica aos que foram enviados. Porém, como estou com dificuldade , não consegui dar andamento ou completar a resolução. É que se trata de Tipo Abstrato de Dados(TAD), ou seja, foi criado um novo tipo (StrCol) que funcionará como uma lista(Coleção) para telefones e e-mails, usando alocação dinâmica de memória. Em função disso , foram criados os arquivos descritos : StrCol.c , StrCol.h e o main.c. com seus respectivos “includes”. A ideia é que quando se insere o nome do contato, em seguida possam ser inseridos quantos telefones ou e-mails forem necessários demandando para tal memória do computador. No StrCol.c, são criados alguns métodos genéricos para inserir na lista e listar . Nesse caso foram adaptados para cadastrarem telefones e e-mails quando se está cadastrando um contato. Contudo, estou tendo dificuldade em como criar uma lista de contatos(contendo nome, telefone(s) e email(s)) e posteriormente exibí-los durante a execução do main.c, através dessa estrutura baseada no TAD. Segue o projeto em anexo. Agradeço a atenção. Projeto.rar
  3. Boa tarde a todos, Desejo fazer um cadastro de dados no formato Tipo Abstrato de Dados, onde existe um arquivo main.c , outro StrCol.c e um header StrCol.h. Entre os dados que se pretende cadastrar estão : nome, uma lista de telefones e uma lista de e-mails do tipo StrCol . Desta forma, tenho a intenção de inserir na lista e listar os dados referente a um contato. Havia criado uma variável BLOCO para definir o tamanho de cada BLOCO na memória e uma variável MAX que diz respeito a quantidade máxima de blocos que se poder ter. Seguindo esse raciocínio , ao inserir um dado na lista, verifica-se primeiro se existe um contato e se também foram ocupados os blocos disponibilizados . Caso não exista nenhum contato é alocado na memória um array de ponteiros do tipo char, onde cada um deles irá apontar para um bloco de memória, de acordo com o tamanho do dado que o usuário for inserir. Caso já exista algum contato e se os blocos já foram ocupados não estourando o número máximo de blocos, então se faz uma realocação de memória, disponibilizando um novo bloco, sem perder os dados anteriores. Havia criado no arquivo StrCol.h , uma struct StrCol onde dentro dela denominei um ponteiro para ponteiro lista(char** lista). Mas algumas informações estão meio desencontradas , pois eu já havia definido dentro de struct no arquivo StrCol.h o campo MAX e BLOCOS, mas não sei como chamar isso no arquivo StrCol.c . Tendo como base a ideia do programa , já explicada acima e sem querer me estender muito, estou um pouco confuso e encontrando muita dificuldade em como criar uma lista de contatos dentro de main.c e listar os dados como nome, e a lista de e-mails ou telefones referentes a cada contato. Fico muito agradecido caso alguém se proponha a me ajudar.

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