fopen "protected memory"
-
Moin ihr da draußen.
Folgender Code:
void WritePerToFile (pperson_t pPerArr, char *filename) { int i = 0; FILE *pfile; pfile = fopen(filename,"w"); while (pPerArr[i].fNam[0] != EMPTYTAG_C) { if (pfile != NULL) fprintf(pfile,"%s\n%s\n",pPerArr[i].fNam,pPerArr[i].vNam); i++; } rewind(pfile); if (pfile != NULL) fprintf(pfile,"%d\n\n",i); else perror("dfd"); fclose (pfile); }
Problem: fopen() kriegt die Datei nicht erstellt.
Fehlermeldung: "Read/wrtite on protected memory"
perror(): "too many open files"Habe bereits verschiedene Pfade ausprobiert, doch leider immer das gleiche Problem.
Gibt es Hinweise wie ich das Problem lösen kann?
-
Du sollst nicht gegen das Betriebssystem ankämpfen.
Obwohl du von fopen mitgeteilt bekommst, dass der Aufruf fehlgeschlagen ist, arbeitest du trotzdem mit dem (NULL) Zeiger weiter (rewind/fclose). Das ist Schrott.
-
Um die Zeile geht es mir nicht, dass ist mir klar.
problem ist ja ein anderes
-
Linux denk ich mal?
http://www.cyberciti.biz/faq/linux-increase-the-maximum-number-of-open-files/