Hola llevo horas y horas sin conseguir que me funcione esto, no se donde esta el problema, si abro el archivo desde dentro de la funcion no me da problemas y me lee bien el archivo, pero si lo abro desde el void main al ejecutarlo me sale un error de que debe cerrarse el programa y no entiendo porqué, que puede ser??
void LeerMonstruo(FILE *sec, Tmonstruo *monstruo)
{
fscanf(sec,"%[^:]",monstruo->nombre);
fscanf(sec,"%d",&monstruo->arma);
fscanf(sec,"%d",&monstruo->escudo);
monstruo->codigo_objeto=-1;
printf("%s\n", monstruo->nombre);
printf("%d\n", monstruo->arma);
printf("%d\n", monstruo->escudo);
printf("%d\n", monstruo->codigo_objeto);
}
void main()
{
FILE *fm;
Tcadena nomf;
Tmonstruo *monstruo;
scanf("%s", nomf);
fm=fopen(nomf,"r");
LeerMonstruo(&fm,&monstruo);
printf("monstruos leidos correctamente\n");
fclose(fm);
}