F_BA_GetUsedEntryCount

Die Funktion F_BA_GetUsedEntryCount vom Rückgabetyp DINT durchsucht den Speicherbereich eines ARRAYs nach dem ersten Eintrag, der mit xUnusedVal als "ungenutzt" gekennzeichnet ist.
Dabei wird der Speicherbereich des Arrays beginnend ab der Adresse pArray schrittweise untersucht: die Schrittweite ist durch die Größe von xUnusedVal vorgegeben, die Anzahl der Vergleichsschritte durch die Differenz von nLowerBound und nUpperBound. Dabei wird davon ausgegangen, dass die Einträge nLowerBound und nUpperBound richtig sind.
Der Rückgabewert der Funktion zeigt an, wie viele Elemente nicht dem Wert xUnusedVal entsprechen, bis dieser gefunden wird. Wird der Wert gefunden, wird die Suche abgebrochen.
Bei einer fehlerhaften Eingabe, d.h. pArray = 0 oder wenn die Größe von xUnusedVal = 0 ist, wird die Funktion sofort abgebrochen und nimmt als Rückgabewert "0" an.
Syntax
FUNCTION F_BA_GetUsedEntryCount : DINT
VAR_INPUT
pArray : PVOID;
nLowerBound : DINT;
nUpperBound : DINT;
xUnusedVal : ANY;
END_VAR
Eingänge
Name | Typ | Beschreibung |
---|---|---|
pArray | PVOID | Zeiger auf den Beginn des Speicherbereiches, in dem das zu untersuchende Array liegt. |
nLowerBound | DINT | Untere Bereichsgrenze des Arrays. |
nUpperBound | DINT | Obere Bereichsgrenze des Arrays. |
xUnusedVal | ANY | Besitzt ein Element des Arrays den hier angegebenen Wert, so gilt es als "ungenutzt". |
Voraussetzungen
Entwicklungsumgebung | Erforderliche SPS-Bibliothek |
---|---|
TwinCAT3.1 4024.35 | Tc3_BA2_Common ab V2.1.20.0 |