@awehm
Mensch danke,..... (erstaunt) ... das funktioniert.
Okay: Was passiert da jetzt genau?
1. Ich habe zwei Stukturen auf die ich einen Pointer beim erstellen setze.
Code:
// headerfile.inhalt
struct A{ bla.., struct A *next, struct B *b, bla..};
struct B{ bla..., struct B *next, bla...};
//main.inhalt
struct A *a;
struct B *b;
2. Ich allociere Speicher für die Struktur A und dann setze ich einen Pointer für das nächste Element vom Typ Struktur A auf NULL somit erhalte ich die Grundlage für eine verkettete Liste.
Code:
a = (struct A *) malloc ( sizeof ( struct A ) );
a->next = 0;
3. Jetzt kommt der spannende Teil: Ich allociere Speicherbereich für meine Struktur B in der Struktur A um damit vollkommen dynamische Speicherverwaltungsfreiheit und eine beste Performence zur Laufzeit zu erhalten. (Hope so...?)
Code:
a->b = (struct B *) malloc ( sizeof ( struct B ) );
a->b->next = 0;
So, warum das alles? Hauptsächlich um schnell und effizient zur Laufzeit zu werden.
Lesezeichen