Zum Inhalt

array abs

_ARRAY_ABS

Type Funktion BOOL
Input PT Pointer (Zeiger auf das Array)
SIZE UINT (Größe des Arrays)
Output BOOL (TRUE)
Die Funktion _ARRAY_ABS rechnet die Elemente eines beliebigen Array of REAL in den Absolutwert um. Beim Aufruf wird der Funktion ein Pointer auf das zu initialisierende Array und dessen Größe in Bytes übergeben. Unter CoDeSys lautet der Aufruf _ARRAY_ABS(ADR(Array), SIZEOF(Array)), wobei Array der Name des zu manipulierenden Arrays ist. ADR ist eine Standardfunktion, die den Pointer auf das Array ermittelt und SIZEOF ist eine Standardfunktion, die die Größe des Arrays ermittelt. Die Funktion liefert nur TRUE zurück. Das durch den Pointer angegebene Array wird direkt im Speicher manipuliert.
Diese Art der Bearbeitung von Arrays ist äußerst effizient, da kein zusätzlicher Speicher benötigt wird und keine Übergabewerte kopiert werden müssen.
Aufruf _ARRAY_ABS(ADR(bigarray), SIZEOF(bigarray))
Beipiel [0,-2,3,-1-5] wird umgewandelt in [0,2,3,1,5]

_array_abs