Skip to main content
Suche

Compilerfehler C0380

Meldung: Die Operatoren LOWER_BOUND und UPPER_BOUND werden nur für Arrays mit variabler Länge unterstützt

Mögliche Fehlerursache: Einer der beiden Operatoren LOWER_BOUND oder UPPER_BOUND wird nicht für ein Array mit variabler Länge verwendet.

Fehlerbehebung: Verwenden Sie die Operatoren LOWER_BOUND oder UPPER_BOUND nur für ein Array mit variabler Länge.

Tipp

Ab Compilerversion 3.5.14.0 können die Operatoren auch für statische Arrays verwendet werden. Somit tritt der Fehler C0380 nur bei früheren Compilerversionen auf.

Beispiel 473. Beispiel für den Fehler:
FUNCTION_BLOCK POU
VAR_IN_OUT
    arrin : ARRAY [*] OF INT;
END_VAR
VAR
    arrtest : ARRAY [0..5] OF INT;
    test1: DINT;
    test2: DINT;
END_VAR

test1 := UPPER_BOUND(arrin, 1);
test2 := UPPER_BOUND(arrtest, 1);

Meldung:

C0380: Die Operatoren LOWER_BOUND und UPPER_BOUND werden nur für Arrays mit variabler Länge unterstützt