Hallo,
ich möchte gerne ein Array mit Structs erstellen und komme an dem Punkt
nicht weiter.
______________________________________
types.h:
struct data_type
{
volatile unsigned char x,
y,
z[SIZE];
};
______________________________________
test.h:
extern struct data_type test1; // funktioniert
extern struct data_type test2[6]; // funktioniert nicht!!!
______________________________________
Fehlermeldung: error: array type has incomplete element type
Ich würde mich sehr freuen, wenn mir jemand erklären kann wie ich das
Problem beheben kann.
Allerding dürfen keine größeren Umbauten vorgenommen werden. test1 muss
genau so erhalten bleiben.
Gruß Christian
Das Problem lässt sich durch die Reihenfolge der #include-Anweisungen steuern. "types.h" muss vor "test.h" eingebunden werden.
Rufus Τ. Firefly schrieb: > Das Problem lässt sich durch die Reihenfolge der #include-Anweisungen > steuern. "types.h" muss vor "test.h" eingebunden werden. Besser wäre noch, types.h in test.h einzubinden.
Beide funktionieren nicht weil sie undefiniert sind. Wie gesagt, es sind nur Referenzen auf Daten die an anderer Stelle definiert wurden. Deshalb muß auch die "Dimensionierung" bei test2 schlicht weg. Das gehört in die Definition. Es sollte heißen:
1 | extern struct data_type test2[]; |
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.