zwei Integer Arrays vergleichen
Verfasst: 14.05.2022 19:11
moin moin
ich erstelle zwei identische Integer-Arrays.
In einem von diesen Arrays könnten sich im Programmverlauf ein oder mehrere Werte ändern. Anzahl der Elemente bleibt konstant.
Das andere Array bleibt unberührt // dient also als Referenz.
Um zum Schluß herauszufinden, ob Werte geändert wurden, würde ich also beide Arrays Element für Element in einer Schleife vergleichen und bei der ersten Differenz abbrechen.
Bei einer Differenz wird das geänderte Array in eine Datei geschrieben, um beim nächsten Start die Daten wieder laden zu können.
Ich suche nach einer Alternative zur Vergleichs-Schleife. Die Idee ist, CompareMemory() zu nutzen:
die Adresse beider Arrays speichern: *pnt1 = array1() *pnt2 = array2()
Speichergröße: g = ArraySize(array1()) x 8 Byte
Vergleich: CompareMemory(*pn1,*pnt2, g)
Wäre das so stabil machbar?
Würde sicherlich gegenüber einer Schleife deutlich schneller sein.
Bin mir nur nicht sicher, ob das auf diese Weise gefahrlos & präzise funktioniert.
Habt ihr da Tips/Ideen/Erfahrungen?
Gruß Jörg
ich erstelle zwei identische Integer-Arrays.
In einem von diesen Arrays könnten sich im Programmverlauf ein oder mehrere Werte ändern. Anzahl der Elemente bleibt konstant.
Das andere Array bleibt unberührt // dient also als Referenz.
Um zum Schluß herauszufinden, ob Werte geändert wurden, würde ich also beide Arrays Element für Element in einer Schleife vergleichen und bei der ersten Differenz abbrechen.
Bei einer Differenz wird das geänderte Array in eine Datei geschrieben, um beim nächsten Start die Daten wieder laden zu können.
Ich suche nach einer Alternative zur Vergleichs-Schleife. Die Idee ist, CompareMemory() zu nutzen:
die Adresse beider Arrays speichern: *pnt1 = array1() *pnt2 = array2()
Speichergröße: g = ArraySize(array1()) x 8 Byte
Vergleich: CompareMemory(*pn1,*pnt2, g)
Wäre das so stabil machbar?
Würde sicherlich gegenüber einer Schleife deutlich schneller sein.
Bin mir nur nicht sicher, ob das auf diese Weise gefahrlos & präzise funktioniert.
Habt ihr da Tips/Ideen/Erfahrungen?
Gruß Jörg