I can not assign value to a variable of a pointer of struct
within a struct
.
My structs
:
typedef struct notas{
float geral;
float especifica;
}Notas;
typedef struct data{
int dia,mes,ano;
}Data;
typedef struct local{
char ender[81];
int sala;
}Local;
typedef struct candidatos{
int inscr;
char nome[81];
Local *loc;
Data nasc;
Notas nota;
}Candidatos;
And the code that should assign values:
void ler_candidatos(Candidatos *A, int n)
{
int i;
for(i=0;i<n;i++)
{
printf("Digite numero de inscriçao: ");
scanf("%d",&A[i].inscr);
fflush(stdin);
printf("Digite o nome: ");
scanf("%[^\n]",A[i].nome);
fflush(stdin);
printf("Digite o endereço: ");
scanf("%[^\n]",A[i].loc->ender); //erro aqui.
fflush(stdin);
printf("Digite a sala: ");
scanf("%d",&A[i].loc->sala);
fflush(stdin);
printf("Digite sua data de nascimento: ");
scanf("%d %d %d",&A[i].nasc.dia,&A[i].nasc.mes,&A[i].nasc.ano);
fflush(stdin);
printf("Digite sua nota geral: ");
scanf("%f",&A[i].nota.geral);
fflush(stdin);
printf("Digite sua nota especifica: ");
scanf("%f",&A[i].nota.especifica);
fflush(stdin);
}
}