1

I wonder if it is allowed by the standard (IEC 1131-3) to mix different data types in an expression.

Example

VAR A : BOOL;
    B : INT;

(* ... *)

IF (B AND C) THEN
  ...
END_IF
4

2 回答 2

0

在类型中“向下”转换时必须使用显式类型转换函数。“向上”转换是隐式完成的。

VAR A : BOOL;
    B : INT;
(* ... *)
IF (INT_TO_BOOL(B) AND C) THEN
  ...
END_IF

TYPEA_TO_TYPEB() 的形式有这些类型转换的所有形式

于 2013-08-21T03:28:59.913 回答
0

它不会编译。需要进行类型转换,因为 ST 与 Pascal 一样是类型严格的。

于 2013-08-13T10:18:30.570 回答