1 | struct
|
2 | {
|
3 | int x;
|
4 | int y;
|
5 | } test_rx, test_tx;
|
tuts auch. Ich glaube, Du hast bei der Deklaration von structs etwas
gründlich missverstanden. Der Bezeichner, der hinter dem "struct" (vor
der öffnenden Klammer) steht, ist optional und bezeichnet die struct an
sich. Gibt man ihn an, dann kann man ihn bei weiteren Deklarationen
verwenden, z.B.:
1 | struct foo
|
2 | {
|
3 | int x;
|
4 | int y;
|
5 | } bar1;
|
6 |
|
7 | struct foo bar2, bar3;
|
bar1, bar2 und bar3 sind jetzt alle identisch aufgebaute
Strukturvariablen mit dem Aufbau von "foo". Die Variablennamen an sich
stehen HINTER der schließenden Klammer.
Ich hoffe, das macht es etwas klarer.
Wenn man keine weiteren structs des selben Typs im weiteren
Programmverlauf deklarieren will, dann kann man den Bezeichner foo
weglassen:
1 | struct
|
2 | {
|
3 | int x;
|
4 | int y;
|
5 | } bar1, bar2, bar3;
|
Der Zugriff auf die einzelnen Elemente geht dann z.B. mit