Ajuda para corrigir o erro no cadastro

1. Ajuda para corrigir o erro no cadastro

Emmanuel Ursulino
ursomg

(usa Outra)

Enviado em 14/11/2014 - 16:12h

Boa tarde preciso de ajuda para o cadastro de clientes só que esta dando erro em um lugar.

#include <stdio.h>
#include <stdlib.h>
#include <string.h>


typedef struct
{
char cpf[20];
char nome[40];
char setor[40];
float salario;

}func;

typedef struct
{
int primeiro,ultimo;
func item[40];
}tipolista;

void fazlistavazia(tipolista *lista)
{
lista->primeiro=0;
lista->ultimo = lista->primeiro;
}

int verificalistavazia(tipolista lista)
{
return( lista.primeiro==lista.ultimo);
}

int insere(func x,tipolista *lista)
{
strcpy(lista->item[lista->ultimo].cpf,x.cpf);
strcpy(lista->item[lista->ultimo].nome,x.nome);
strcpy(lista->item[lista->ultimo].setor,x.setor);
lista->item[lista->ultimo].salario = x.salario;

lista->ultimo++;
}

void imprime(tipolista *lista)
{
int i;
for (i=0;i<lista->ultimo;i++)
{
printf("CPF %s",lista->item[i].cpf);
printf("\nNOME..... %s",lista->item[i].nome);
printf("\nSetor..... %s",lista->item[i].setor);
printf("\nSalario... %f",lista->item[i].salario);

}
}

main()
{

func *mylista;
func x;

int d,i;
char linha[255];
FILE*arq;
arq=fopen("lista.txt","r");
fscanf(arq,"%d",&d);
printf("\n%d",d);

for (i = 0; i < d; i++)
mylista = (func *) malloc(sizeof(func));//linha dando erro...

fgets(linha, 255, arq);
strcpy (mylista->cpf, linha);
fgets(linha, 255, arq);
strcpy(mylista->nome,linha);
fgets(linha, 255,arq);
mylista->salario,linha;
fgets(linha,255,arq);
strcpy(mylista->setor,linha);




}
tipolista(mylista);

imprime(mylista);
printf("Informe a cpf: ");
scanf("%s",&x.cpf);
printf("Informe o nome: ");
scanf("%s",&x.nome);
printf("Informe o salario ");
scanf("%f",&x.salario);
printf("Informe o setor: ");
scanf("%s",&x.setor);
insere(x,mylista);
imprime(mylista);
system ("pause");

}


  


2. Re: Ajuda para corrigir o erro no cadastro

Thiago Henrique Hüpner
Thihup

(usa Manjaro Linux)

Enviado em 14/11/2014 - 17:30h

[/i]
Um erro !?

Cara , está lotado de erros , recomendo reescrever o codigo todo e depois pedir ajuda (sem querer ofender)

Pesquise sobre listas encadeadas (http://pt.wikipedia.org/wiki/Lista_ligada) , lhe será muito util

E essa alocação de memória é inútil , pelo menos nesse código.

Se precisar de ajuda , me adicione no skype : thihup

Espero ter ajudado

[]'s

T+






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts