Pesquisar na Comunidade
Mostrando resultados para as tags ''c++c/c++''.
Encontrado 1 registro
-
#include <stdio.h> #include <stdlib.h> FILE *arquivo; typedef struct { int cod; char nome[20]; struct codigo *prox; }codigo; codigo *inicio,*fim; void abrir() { codigo p; if((arquivo=fopen("teste.txt","rb"))==NULL) { arquivo=fopen("teste.txt","a+b"); p.cod=0; fwrite(&p,sizeof(codigo),1,arquivo); } else { arquivo=fopen("teste.txt","a+b"); } } void recebe (codigo *p) { abrir(); fseek(arquivo,-sizeof(codigo),SEEK_END); fread(p,sizeof(codigo),1,arquivo); p->cod++; fclose(arquivo); abrir(); printf("\n Digite nome:"); fflush(stdin); gets(p->nome); insere(&p); fwrite(p,sizeof(codigo),1,arquivo); fclose(arquivo); } void listavz() { codigo *aux; aux=(codigo*)malloc(sizeof(codigo)); inicio=aux; fim=inicio; } void insere(codigo p) { codigo *aux; aux=(codigo*)malloc(sizeof(codigo)); fim->prox=aux; fim=aux; aux->prox=NULL; } void imprime2() { codigo *aux; while(aux!=NULL) { printf("\n Codigo:",aux->cod); printf("\n Nome:",aux->nome); aux=aux->prox; } } void imprimir() { abrir(); codigo p; while(fread(&p,sizeof(codigo),1,arquivo)) { printf("\n Codigo:%d",p.cod); printf("\n Nome:%s",p.nome); } fclose(arquivo); } int main() { int op=0; do { recebe(); fflush(stdin); scanf("%d",&op); }while(op!=2); imprimir(); printf("\n imprime 2"); imprime2(); return 0; } Com esse codigo queria implementar uma lista encadeada e esta dando erro pf alguém me ajuda rapido