Hallo, ich steige langsam immer mehr in die Programmierung ein und habe eine Frage zum Aktualisieren von Datenreihen. zuerst mal den Code dann die Frage:
Ok also es gibt ein Array mit 50 Feldern. Wenn ein neuer Wert (NewValue) kommt dann wird die Schleife ausgeführt und der neue Wert rückt in [0] und alle folgenden werden um eine Position nach hinten geschoben und der letzte verschwindet (im Code natürlich umgekehrt von hinten nach vorne).
Das war bisher meine Methode eine Datenreihe aktuell zu halten wenn neue Werte kommen. 50 Werte zu schreiben um 1 Wert zu aktualisieren ist wohl nicht so effektiv. Ich habe von Ringpuffern gelesen, dass diese eine bessere Alternative darstellen habe es aber nirgendwo richtig verstanden. Ich verstehe den Sinn und die Anwendung von Pointern. Leider aber nicht, wie das anhand meines Beispiels aussehen müsste??? Vielleicht gibt es ja noch was anderes besseres? Schlussendlich suche ich die Lösung die für das aktualisieren der Datenreihe die beste Performance im Programm bietet. Hat jemand eine Idee wie man die Datenreihe aktualisiert ohne alle 50 Werte einzelnd verschieben zu müssen und wie das im Code aussehen würde?
Gruß
Code:
int array[50] = { 0 };
for(x=49; x>=1; x = x-1)
{
array[x]=array[x-1]
}
array[0]= NewValue;
Ok also es gibt ein Array mit 50 Feldern. Wenn ein neuer Wert (NewValue) kommt dann wird die Schleife ausgeführt und der neue Wert rückt in [0] und alle folgenden werden um eine Position nach hinten geschoben und der letzte verschwindet (im Code natürlich umgekehrt von hinten nach vorne).
Das war bisher meine Methode eine Datenreihe aktuell zu halten wenn neue Werte kommen. 50 Werte zu schreiben um 1 Wert zu aktualisieren ist wohl nicht so effektiv. Ich habe von Ringpuffern gelesen, dass diese eine bessere Alternative darstellen habe es aber nirgendwo richtig verstanden. Ich verstehe den Sinn und die Anwendung von Pointern. Leider aber nicht, wie das anhand meines Beispiels aussehen müsste??? Vielleicht gibt es ja noch was anderes besseres? Schlussendlich suche ich die Lösung die für das aktualisieren der Datenreihe die beste Performance im Programm bietet. Hat jemand eine Idee wie man die Datenreihe aktualisiert ohne alle 50 Werte einzelnd verschieben zu müssen und wie das im Code aussehen würde?
Gruß
Zuletzt bearbeitet: