Hallo,
ich versuche gerade Strings aus einer Datei einzulesen und diese in ein 
String-Array zu schreiben. Dabei möchte ich nach jeder eingelesenen 
Zeile das Array um einen String erweitern.
Das Programm lässt sich auch kompilieren, ich bekomme aber nach dem 
Start einen Segmentation Fault.
Kann mir hier jemand Helfen?
lg
1  | #include <stdio.h>
  | 
2  | #include <stdlib.h>
  | 
3  | #include <string.h>
  | 
4  | 
  | 
5  | int get_list();
  | 
6  | void get_interprets();
  | 
7  | 
  | 
8  | char** interprets = 0;
  | 
9  | 
  | 
10  | int main()
  | 
11  | {
 | 
12  |   int songcount;
  | 
13  | 
  | 
14  |   songcount = get_list();
  | 
15  |   //get_interprets();
  | 
16  | 
  | 
17  |   return 0;
  | 
18  | }
  | 
19  | 
  | 
20  | int get_list()
  | 
21  | {
 | 
22  |   FILE *fp;
  | 
23  |   char buf[255];
  | 
24  |   int songcount = 0;
  | 
25  | 
  | 
26  |   fp = fopen("songlist.txt", "r");
 | 
27  | 
  | 
28  |   while(fgets(buf, 255, (FILE*)fp))
  | 
29  |   {
 | 
30  |     interprets = (char**) realloc(interprets, (songcount+1)*sizeof(char*));
  | 
31  |     *interprets = (char*) malloc(255*sizeof(char));
  | 
32  | 
  | 
33  |     strcpy(interprets[songcount], buf);
  | 
34  | 
  | 
35  |     songcount++;
  | 
36  |   }
  | 
37  | 
  | 
38  |   return songcount;
  | 
39  | }
  |