将类型转换为STRING或WSTRING时,键入的值将作为字符串左对齐,并且如果过长则被截断。因此,为类型转换运算符<>_TO_STRING和<>_TO_WSTRING声明返回变量的长度应足够长,以便在不进行任何操作的情况下字符串有足够的空间。 |
运算符将布尔值转换为指定的数据类型,然后返回类型转换后的值。
<变量名> := <BOOL to 操作符> ( <操作数> );
<操作数> = <变量名> | <文字>
.运算符
BOOL_TO___UXINT
BOOL_TO___XINT
BOOL_TO___XWORD
BOOL_TO_BIT
BOOL_TO_BYTE
BOOL_TO_DATE
BOOL_TO_DINT
BOOL_TO_DT
BOOL_TO_DWORD
BOOL_TO_INT
BOOL_TO_LDATE
BOOL_TO_LDT
BOOL_TO_LINT
BOOL_TO_LREAL
BOOL_TO_LTIME
BOOL_TO_LTOD
BOOL_TO_LWORD
BOOL_TO_REAL
BOOL_TO_SINT
BOOL_TO_STRING
BOOL_TO_TIME
BOOL_TO_TOD
BOOL_TO_UDINT
BOOL_TO_UINT
BOOL_TO_ULINT
BOOL_TO_USINT
BOOL_TO_WORD
BOOL_TO_WSTRING
.当操作数值为TRUE时,将返回以下类型的值:
.当操作数值为FALSE时,将返回以下类型的值:
.ST实现语言
FUNCTION_BLOCK FB_ConvertFromBool
VAR
VAR
uxiReturn_1: __UXINT;
uxiReturn_10: __UXINT;
iReturn_2: __XINT;
iReturn_20: __XINT;
xwReturn_3: __XWORD;
xwReturn_30: __XWORD;
bitReturn_4: BOOL;
bitReturn_40: BOOL;
bReturn_6: BYTE;
bReturn_60: BYTE;
dateReturn_7: DATE;
dateReturn_70: DATE;
dtReturn_8: DATE_AND_TIME;
dtReturn_80: DATE_AND_TIME;
diReturn_9: DINT;
diReturn_90: DINT;
dtReturn_10: DATE_AND_TIME;
dtReturn_100: DATE_AND_TIME;
dwReturn_11: DWORD;
dwReturn_110: DWORD;
iReturn_12: INT;
iReturn_120: INT;
liReturn_13: LINT;
liReturn_130: LINT;
lrReturn_14: LREAL;
lrReturn_140: LREAL;
lwReturn_15: LWORD;
lwReturn_150: LWORD;
rReturn_16: REAL;
rReturn_160: REAL;
siReturn_17: SINT;
siReturn_170: SINT;
sReturn_18: STRING;
sReturn_180: STRING;
todReturn_19: TIME_OF_DAY;
todReturn_190: TIME_OF_DAY;
timReturn_20: TIME;
timReturn_200: TIME;
todReturn_21: TIME_OF_DAY;
todReturn_210: TIME_OF_DAY;
udiReturn_22: UDINT;
udiReturn_220: UDINT;
uiReturn_23: UINT;
uiReturn_230: UINT;
uliReturn_24: ULINT;
uliReturn_240: ULINT;
usiReturn_25: USINT;
usiReturn_250: USINT;
wReturn_26: WORD;
wReturn_260: WORD;
wsReturn_27: WSTRING;
wsReturn_270: WSTRING;
END_VAR
// Return value of operand = TRUE or FALSE
uxiReturn_1 := BOOL_TO___UXINT(TRUE);
uxiReturn_10 := BOOL_TO___UXINT(FALSE);
iReturn_2 := BOOL_TO___XINT(TRUE);
iReturn_20 := BOOL_TO___XINT(FALSE);
xwReturn_3 := BOOL_TO___XWORD(TRUE);
xwReturn_30 := BOOL_TO___XWORD(FALSE);
bitReturn_4 := BOOL_TO_BIT(TRUE);
bitReturn_40 := BOOL_TO_BIT(FALSE);
bReturn_6 := BOOL_TO_BYTE(TRUE);
bReturn_60 := BOOL_TO_BYTE(FALSE);
dateReturn_7 := BOOL_TO_DATE(TRUE);
dateReturn_70 := BOOL_TO_DATE(FALSE);
dtReturn_8 := BOOL_TO_DT(TRUE);
dtReturn_80 := BOOL_TO_DT(FALSE);
diReturn_9 := BOOL_TO_DINT(TRUE);
diReturn_90 := BOOL_TO_DINT(FALSE);
dwReturn_11 := BOOL_TO_DWORD(TRUE);
dwReturn_110 := BOOL_TO_DWORD(FALSE);
iReturn_12 := BOOL_TO_INT(TRUE);
iReturn_120 := BOOL_TO_INT(FALSE);
liReturn_13 := BOOL_TO_LINT(TRUE);
liReturn_130 := BOOL_TO_LINT(FALSE);
lrReturn_14 := BOOL_TO_LREAL(TRUE);
lrReturn_140 := BOOL_TO_LREAL(FALSE);
lwReturn_15 := BOOL_TO_LWORD(TRUE);
lwReturn_150 := BOOL_TO_LWORD(FALSE);
rReturn_16 := BOOL_TO_REAL(TRUE);
rReturn_160 := BOOL_TO_REAL(FALSE);
siReturn_17 := BOOL_TO_SINT(TRUE);
siReturn_170 := BOOL_TO_SINT(FALSE);
sReturn_18 := BOOL_TO_STRING(TRUE);
sReturn_180 := BOOL_TO_STRING(FALSE);
timReturn_20 := BOOL_TO_TIME(TRUE);
timReturn_200 := BOOL_TO_TIME(FALSE);
todReturn_21 := BOOL_TO_TOD(TRUE);
todReturn_210 := BOOL_TO_TOD(FALSE);
udiReturn_22 := BOOL_TO_UDINT(TRUE);
udiReturn_220 := BOOL_TO_UDINT(FALSE);
uiReturn_23 := BOOL_TO_UINT(TRUE);
uiReturn_230 := BOOL_TO_UINT(FALSE);
uliReturn_24 := BOOL_TO_ULINT(TRUE);
uliReturn_240 := BOOL_TO_ULINT(FALSE);
usiReturn_25 := BOOL_TO_USINT(TRUE);
usiReturn_250 := BOOL_TO_USINT(FALSE);
wReturn_26 := BOOL_TO_WORD(TRUE);
wReturn_260 := BOOL_TO_WORD(FALSE);
wsReturn_27 := BOOL_TO_WSTRING(TRUE);
wsReturn_270 := BOOL_TO_WSTRING(FALSE);