Que te puedo decir capo
...
Se supone que si estás cambiado los datos de la estructura por referencia y retornado valores enteros ya no se pone como tipo de la función la estructura, sino simplemente un "int". Así:
int read_ficP(pacientes *primero){
FILE *fp;
storage infoP;
int a = 1;
pacientes *aux,aux2;
if((fp
= fopen("clinicaP.bin","r+b")) == NULL
) {printf("Error al abrir el archivo"); return 0;} fseek (fp
, 0L, SEEK_SET
);
/* Es mejor usar este fragmento, ya que en caso de fallo de fread, hay menos posibilidades de que se
produzca fallo de segmentación */
while(1){
if(fread(&aux2
,sizeof(pacientes
),1,fp
) < 1){fclose(fp
); return primero
;} infoP.dniP = aux2.dni;
strcpy(infoP.
nombreP,aux2.
nombre); infoP.dniM = aux2.dniM;
add_nodP(&primero,infoP);
}
return 1;
}
¿Simple?. A veces, cuando uno va aprendiendo más, se confunde en lo básico
.