Hi, Am Mittwoch, 16. April 2003 21:56 schrieb Michael Matz:
array[0] = (char) malloc (sizeof (char)*100);
wieder falscher cast. array[0] hat Typ "char *", nicht "char".
Hm, sollte der Compiler dann nicht eine Waring ausspucken?
i++; strcpy(array[i], input);
Und hier schreibst du in array[i], hast allerdings in der Zwischenzeit 'i' schon erhoeht, schreibst also in uninitialisierten Speicher. Was du willst ist eine Schleife der Art:
Sorry, hatte zu dem Zeitpunkt leider keine Verbindung mit dem Rechner auf dem der Original Source liegt. War ein Fehler von mir.
int i = 0; array = (char **) malloc (sizeof (char *)); while (getinput) { array = (char **) realloc (array, (i+1) * sizeof (char *)); array[i] = (char *) malloc (100 * sizeof(char)); strcpy (array[i], input); i++; }
Super, jetzt kann ich das morgen in aller Ruhe einbauen und das Menü endlich fertig stellen. LG Georg