Azrae1
02-11-2003, 16:29
Hallo,
ich werd noch verrückt, jetzt bin ich schon den ganzen Tag dran, dass ich in einem Unterprogramm aus einem Textfile mehrere Strings herausbekommen.
Der erste Pointer zeigt auf ein Feld von einem Feld von Strings.
Ich kann exakt 2 Strings abspeichern dann sagt er
Segmentation Fault
kann mir jemand sagen wo der Fehler ist?
(im main wird der erste pointer au
int getInodesArray(char *filename, char ***files){
FILE *inodesfile;
int i=0;
char inputfilename[15];
// inodesfile = fopen(filename,"r");
inodesfile = fopen("inodes","r");
printf("getInodesArray");
do{
fscanf(inodesfile,"%s",inputfilename);
*files = realloc (*files,(i+1)*sizeof(char*));
if(!*files)
printf("FEHLER bei realloc");
*files[i] = 0;
*files[i] = malloc(strlen(inputfilename)+1);
if(!*files[i])
printf("FEHLER bei malloc");
strcpy(*files[i],inputfilename);
i++;
}while (!feof(inodesfile));
.
.
.
im main wird der pointer so initialisiert
char ***filearray = NULL;
filearray = malloc(sizeof(char**));
*filearray= NULL;
mfg Azrael
ich werd noch verrückt, jetzt bin ich schon den ganzen Tag dran, dass ich in einem Unterprogramm aus einem Textfile mehrere Strings herausbekommen.
Der erste Pointer zeigt auf ein Feld von einem Feld von Strings.
Ich kann exakt 2 Strings abspeichern dann sagt er
Segmentation Fault
kann mir jemand sagen wo der Fehler ist?
(im main wird der erste pointer au
int getInodesArray(char *filename, char ***files){
FILE *inodesfile;
int i=0;
char inputfilename[15];
// inodesfile = fopen(filename,"r");
inodesfile = fopen("inodes","r");
printf("getInodesArray");
do{
fscanf(inodesfile,"%s",inputfilename);
*files = realloc (*files,(i+1)*sizeof(char*));
if(!*files)
printf("FEHLER bei realloc");
*files[i] = 0;
*files[i] = malloc(strlen(inputfilename)+1);
if(!*files[i])
printf("FEHLER bei malloc");
strcpy(*files[i],inputfilename);
i++;
}while (!feof(inodesfile));
.
.
.
im main wird der pointer so initialisiert
char ***filearray = NULL;
filearray = malloc(sizeof(char**));
*filearray= NULL;
mfg Azrael