grosser_marco
Level-1
- Beiträge
- 45
- Reaktionspunkte
- 1
-> Hier kostenlos registrieren
Hallo alle zusammen,
hat irgendjemand eine gute Idee, wie man die Inhalte zweier identischer Strukturen vergleichen kann. Wobei ich mit Struktur nicht nur einfache Arrays meine.
Also z.B. definiere ich einen Strukturtyp wie folgt:
TYPE Struktur
STRUCT
Variable1: Andere_Struktur; (*sozusagen eine Struktur in der Struktur*)
Variable2: INT;
Variable3: INT;
Variable4: BOOL;
Variable5: BOOL;
Variable6: Andere_Struktur;
END_STRUCT
END_TYPE
Von diesem Strukturtyp leite ich zwei Objekte ab:
Struktur1: Struktur;
Struktur2: Struktur;
Und jetzt will ich die INHALTE der beiden Strukturen (Struktur1 und Struktur2) auf Gleich oder Ungleich überprüfen.
Mit einfachem Vergleich Struktur1 EQ Struktur2 oder Struktur1 NE Struktur2 geht es jedenfalls nicht, da meckert TwinCAT beim Übersetzen.
Man könnte auch jedes Element der ersten mit dem entsprechenden Element der zweiten Struktur vergleichen, aber das wäre bei größeren Strukturen enorm aufwendig.
Ich habe schon überlegt, Zeiger auf die Strukturanfänge zu definieren, und die Strukturen über eine Laufveriable dann byteweise zu vergleichen, aber ich finde keinen programmtechnischen Ansatz dafür.
Hat irgendjemand eine Idee oder so was schon mal gemacht?
Viele Grüße
grosser_marco
hat irgendjemand eine gute Idee, wie man die Inhalte zweier identischer Strukturen vergleichen kann. Wobei ich mit Struktur nicht nur einfache Arrays meine.
Also z.B. definiere ich einen Strukturtyp wie folgt:
TYPE Struktur
STRUCT
Variable1: Andere_Struktur; (*sozusagen eine Struktur in der Struktur*)
Variable2: INT;
Variable3: INT;
Variable4: BOOL;
Variable5: BOOL;
Variable6: Andere_Struktur;
END_STRUCT
END_TYPE
Von diesem Strukturtyp leite ich zwei Objekte ab:
Struktur1: Struktur;
Struktur2: Struktur;
Und jetzt will ich die INHALTE der beiden Strukturen (Struktur1 und Struktur2) auf Gleich oder Ungleich überprüfen.
Mit einfachem Vergleich Struktur1 EQ Struktur2 oder Struktur1 NE Struktur2 geht es jedenfalls nicht, da meckert TwinCAT beim Übersetzen.
Man könnte auch jedes Element der ersten mit dem entsprechenden Element der zweiten Struktur vergleichen, aber das wäre bei größeren Strukturen enorm aufwendig.
Ich habe schon überlegt, Zeiger auf die Strukturanfänge zu definieren, und die Strukturen über eine Laufveriable dann byteweise zu vergleichen, aber ich finde keinen programmtechnischen Ansatz dafür.
Hat irgendjemand eine Idee oder so was schon mal gemacht?
Viele Grüße
grosser_marco