Vinzenz Mai: Anfängerfrage zu Strings in C

Beitrag lesen

Hallo,

bitte prüfe, ob die Präprozessor-Makros nicht schon definiert sind:

if not defined SEPARATOR ','

#define SEPARATOR ','

//reset Pointer
line -= totalStringSize+1;

merktest Du Dir den Anfang, dann müsstest Du ihn nicht wieder ermitteln.

printf ("alloziere Speicher für %d Zeiger auf Strings\n", seperatorCount);
stringlist[0] = (char*)malloc(seperatorCount*sizeof(int));

Viel Glück: Wenn Du Speicher für "Zeiger auf int" reservieren willst, dann solltest Du nicht die Größe von int, sondern die Größe von Zeiger auf int angeben. Mit etwas Glück sind beide gleich groß (32 Bit z.B.) Außerdem möchtest Du Dir eigentlich Zeiger auf char reservieren.

// Leerzeichen helfen Anweisungen zu strukturieren:
stringlist = (char*) malloc(seperatorCount * sizeof(char*));

für den Rest habe ich momentan keine Zeit, erst am späten Abend wieder ...

Freundliche Grüße

Vinzenz