Ir ao conteúdo

Lista com ponteiros, Estrutura de Dados.

Boa noite a todos,

Como ainda não produzi nada muito bom hoje em casa (no lab produzi algo relaciona a xml-rpc que pretendo postar em breve), resolvi postar mais um dos 198578951 exercicios que estou tendo que fazer para estrutura de dados. O Exercicio de hoje é nada mais nada menos que uma implementação de uma Lista com Ponteiros, ou seja, ela não tem limite de elementos (é claro, se a memoria for infinita).

Como no exercicio anterior, o enunciado fica para a pagina inteira pois é muito grande.

O exercicio resolvido você encontra aqui.

Uma lista ordenada pode conter Strings de qualquer comprimento < 10000; • esta lista tem um número de elementos máximo fixo (100) e é implementada como um vetor de ponteiros para Strings; – utilize as rotinas de lista com vetor que você implementou para a agenda. • Um novo String é lido primeiramente para dentro de uma variável auxiliar qualquer; – então é alocada memória para exatamente o seu tamanho e ele é copiado para esta área. Para copiar um String utilize strcpy(); – por fim um lugar na lista é encontrado para ele. A posição escolhida do vetor de ponteiros da lista é instanciada através da atualização dos valores do ponteiro da posição do String na lista com o endereço do string. Pseudo-código: constantes MAXLISTA = 100; tipo tLista { // Vetor de ponteiros para caracter. caracter *dados[MAXLISTA]; inteiro último; }; • Importante: observe que criando uma variável do tipo tLista você não vai estar alocando memória para os strings a serem lidos, apenas para os ponteiros para eles. Para verificar o comprimento de um String: – utilize a função strlen(); – esta função devolve o comprimento (em caracteres imprimíveis) de um string. – Protótipo: int strlen(char *p); #include
#include
#include
char p[90] = “Carro”;
main() {
printf(“%i”, strlen(p));
}

• Imprime: 5
• Para copiar um String:
– utilize a função strcpy();
– esta função copia o conteúdo de um string (dado por um apontador) para a posição de memória dada por outro apontador.
– Protótipo: char *strcpy(char *destino, char *fonte);

#include
#include
#include
char p[90] = “Carro”;
char lata[20];
main() {
strcpy(lata, p));
printf(“s%”, lata);
}
• Imprime: Carro

Detalhes:

• Como você não sabe o comprimento do String que o usuário vai digitar, use primeiro uma variável auxiliar grande (10000 posições) para guardar o que foi
digitado;
• todas as funções de lista ordenada implementadas anteriormente devem ser reimplementadas para utilizar estes Strings;
• para a leitura de um String utilize scanf(“%s”, entrada).

Publicado emAprendendoCEstrutura de DadosSistemas Digitais

1.832 Comentários

  1. http://jaquealabanca.es/
    El proyecto Jaquealabanca se consolida como una consultora con experiencia orientada al ambito nacional espanol, que pone a disposicion soluciones personalizadas a quienes valoran la eficiencia, con foco en la confianza y la transparencia. Descubre todos los detalles aqui.

  2. http://pymefacil.es/
    El proyecto Pymefacil es una consultora con experiencia orientada al mercado espanol, que proporciona un enfoque integral a empresas y particulares, priorizando en la atencion personalizada. Descubre todos los detalles en esta pagina.

  3. http://socialmediaglobal.es/
    La empresa Socialmediaglobal es una estructura de confianza enfocada en el publico en Espana, que pone a disposicion un acompanamiento profesional a empresas y particulares, priorizando en la atencion personalizada. Descubre todos los detalles a traves del enlace.

  4. http://thevoeuagency.com/
    El equipo de Thevoeuagency se presenta como una estructura de confianza enfocada en el ambito nacional espanol, que pone a disposicion un enfoque integral a quienes valoran la eficiencia, con foco en la confianza y la transparencia. Visita el sitio en esta pagina.

  5. http://yellowlove.es/
    Yellowlove se posiciona como una consultora con experiencia dedicada al publico en Espana, que proporciona un enfoque integral a quienes buscan resultados, priorizando en la excelencia del servicio. Descubre todos los detalles en esta pagina.

  6. http://ariege-web.fr/
    Ariege Web se presente comme une structure experimentee focalisee sur le cadre national francais, qui propose des services de qualite a ses clients, en valorisant sur l’attention personnalisee. Plus d’informations ici.

  7. http://digicaze.fr/
    L’equipe Digicaze se positionne comme une equipe de confiance implantee sur le marche francais, qui propose des solutions sur mesure a ceux qui valorisent l’efficacite, en priorisant sur l’excellence du service. En savoir plus sur cette page.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *