I am having difficulty using fscanf, since I can't read the data from the file while ignoring ;.
void main() {
    int i=0;
    STUDENT aln;
    FILE *fp;
    fp = fopen("Aluno.txt","r");
    //Verificar abertura do File
    checkfile(fp);
    while (!feof(fp)) {
        fscanf(fp,"%d%s%d%d%s%d%c\n",&aln.id,&aln.name,&aln.age,&aln.uc.id,&aln.uc.nome,&aln.class.id,&aln.class.name);
        //fscanf(fp, "%d%[^;];[^;];%d%[^;];%d%[^;];%[^;];%d%[^;];%c\n", &aln.id, &aln.name, &aln.age, aln.uc.id, aln.uc.nome, aln.class.id, aln.class.name);
        printf("Nome: %s\n",aln.name);
    }
    system("pause");
}
and this is the file content:
1;Ruben;15;1;Matematica;1;A
2;Ana;16;2;Portugues;1;A
3;Raquel;17;1;Matematica;2;B
4;Rui;16;2;Portugues;2;B
5;Vasco;15;3;Fisica;3;C
 
    