Eu tenho 3 arquivos, um arquivo main.c, um arquivo funcao.h e funcao.c (nomes hipotéticos). Na minha header, eu só tenho as assinaturas das funções e uma struct do tipo alunos.
main.c
#include <stdio.h>
#include <stdlib.h>
#include "operacoes.h"
int main()
{
Aluno *alunos;
menu_iniciar_sala(alunos);
return 0;
}
funcao.h
#define MAX_ALUNOS 200
typedef struct aluno{
char nome[50];
int idade;
} Aluno;
void iniciar_sala(Aluno * alunos);
funcao.c
void iniciar_sala(Aluno * alunos){
alunos = (Aluno *) malloc(*quantidade_cadeiras_disponiveis * sizeof(Aluno));
Aluno novo_aluno;
novo_aluno.nome = "Daiane Silva";
novo_aluno.idade = 18;
alunos[0] = novo_aluno;
}
O problema: Eu não estou conseguindo com que as alterações feitas na funcao.c, seja modificadas em alunos dentro do main; Eu também não consigo fazer realloc dentro de uma outra função em funcao.h...