achso, das mit dem strtok: Wenn ich dem strtok NULL als erstes Argument geb, gibt er mir immer das nächste Token zurück oder eben NULL wenn Ende. Hat mich auch sehr gewundert, aber laut man-Page und zahlreichen Beispielen im Netz scheint das wohl so ok zu sein.
Moment... *blätter, blätter*...tatsächlich, du hast recht. Asche über mein Haupt... -- Einfachheit ist Voraussetzung für Zuverlässigkeit. -- Edsger Wybe Dijkstra
Das mit dem strtok ist Schweinkram, da hat 0xdeadbeef schon recht. Der Zusammenhang machts:
C++:
buffer = malloc (IRGENDWAS); /* Speicher holen; muss gefree()t werden! /* ... */ buffer = strtok (...) /* buffer wird umgebogen auf was anderes; der gemalloc()te Speicher ist verloren (Speicherleck, aber noch kein Absturz). */ /* ... */ free (buffer); /* Versuch, etwas zu free()en, was nicht gemalloc()t wurde -> Peng. */