Skip to main content

编译器错误 C0380

信息:运算符 LOWER_BOUND 和 UPPER_BOUND 仅支持可变长度的数组。

可能的错误原因: 两个运算符 LOWER_BOUND 或 UPPER_BOUND 之一不用于可变长度数组。

错误修正:仅对可变长度数组使用运算符 LOWER_BOUND 和 UPPER_BOUND。

提示

对于编译器版本 3.5.14.0 及更高版本,运算符也可用于静态数组。因此,错误 C0380 仅发生在早期编译器版本的情况下。

473. 错误示例:
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);

信息:

C0380:运算符 LOWER_BOUND 和 UPPER_BOUND 仅支持可变长度数组。