Ich habe ein Array von Strukturen:
1 | struct MyStruct MyStructArray [] = {...}
|
Auf eine Auswahl der Elemente möchte ich über ein weiteres Array
zugreifen können:
1 | struct MyStruct * MyStructPointerArray [] = {&MyStructArray[0], ...}
|
Der Zugriff soll in einer Funktion geschehen:
1 | MyFunction(struct Mystruct * MyStructPointer)
|
2 | {
|
3 | struct MyStruct *MyStructPointer_local;
|
4 |
|
5 | for (MyStructPointer_local=MyStructPointer; MyStructPointer_local < sizeof MyStructPointer / sizeof (MyStructPointer[0]); MyStructPointer_local++)
|
6 | {
|
7 | AnotherFunction(MyStructPointer_local);
|
8 | }
|
9 | };
|
Ich bekomme allerdings eine Warnung:
1 | warning: passing argument 1 of 'MyFunction' from incompatible pointer type
|
und mein Programm tut nicht.
Wahrscheinlich gehe ich umständlich vor, Vereinfachungen sind natürlich
willkommen! Danke.