Criar ficheiro com struct em C

Melhor ainda:

Código:
Agente *ptr;
E assim tiras aqueles & antes dos ptrs, que só está lá a acumular lixo.
Brigado.Resolvi um problema so que agora da-me erro no Nasc

Código:
typedef struct {int Dia,Mes,Ano;}Data;
typedef struct pessoal 
    {
    char Nome[100];
    char Genero[100];
    Data Nascimento;
    int Nmc;
    int Nmf;
}Agente;
void criar_agente(char nometxt[]){
    FILE *file = fopen(nometxt, "ab");
    Agente *ptr;
    if (file != NULL)
    {    
        printf("Introduza o nome: "); 
        gets(ptr->Nome);
        printf("Introduza o genero: "); 
        gets(ptr->Genero);
        printf("Introduza o dia nascimento: "); scanf("%d", ptr->Nasc.Dia);
        printf("Introduza o mes nascimento: "); scanf("%d", ptr->Nasc.Mes);
        printf("Introduza o ano nascimento: "); scanf("%d", ptr->Nasc.Ano);
        printf("Introduza o numero de missoes concluidas com sucesso: ");
        scanf("%d", ptr->Nmc);
        printf("Introduza o numero de missoes falhadas: "); 
        scanf("%d", ptr->Nmf);
           fwrite(&ptr, sizeof(Agente), 1, file);
           fclose(file);
    }
}
O erro é aqui no Nasc
Código:
printf("Introduza o dia nascimento: "); scanf("%d", ptr->Nasc.Dia);
 
Brigado.Resolvi um problema so que agora da-me erro no Nasc

Código:
    Data Nascimento;
 
        printf("Introduza o dia nascimento: "); scanf("%d", ptr->Nasc.Dia);
        printf("Introduza o mes nascimento: "); scanf("%d", ptr->Nasc.Mes);
        printf("Introduza o ano nascimento: "); scanf("%d", ptr->Nasc.Ano);
O erro é aqui no Nasc

tens declarado Nascimento e não Nasc ;)
 
Back
Topo