Mi duda es la siguiente... En el código de abajo me tira errores en:
Clase[0]=NuevoAlumno();
Clase[1]=NuevoAlumno();
Está mal reservar memoria para el vector clase, luego crear las estructuras necessarias y guardar las direcciones de memoria de dichas estructuras en la memoria reservada??
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
typedef struct Dato {
int dni;
char *nombre;
}Alumno;
Alumno* NuevoAlumno(){
Alumno *a;
char aux[50];
a=(Alumno*)malloc(sizeof(Alumno));
printf("Ingrese el nombre del alumno");
scanf("%s",&aux);
a->nombre=(char*)malloc(strlen(aux)*sizeof(char));
strcpy(a->nombre,aux);
printf("Ingrese el numero de dni del alumno");
scanf("%i",&(a->dni));
return a;
}
int main(){
int x=0;
Alumno *Clase, *pepe,*papa;
Clase=(Alumno*)malloc(10*sizeof(Alumno));
Clase[0]=NuevoAlumno();
Clase[1]=NuevoAlumno();
return 0;}