Skip to main content

转换:REAL、LREAL

重要

如果浮点数在目标数据类型的值范围内,则转换在所有系统上以相同的方式进行。

如果浮点数超出范围限制,则不考虑该数字的第一个字节。

运算符将浮点数转换为指定的数据类型并返回类型转换的值。如果适用,转换是四舍五入的。

如果 REAL_TO_<目标类型> 转换时,值首先转换为 UDINT 然后才转换为目标类型。

对于 LREAL_TO_<目标类型> 转换时,值首先转换为 ULINT 然后才转换为目标类型。

调用语法REAL_TO_<目标类型>(<操作数>)LREAL_TO_<目标类型>(<操作数>)

操作数

类型

描述

变量或文字

REALLREAL

REAL, LREAL

13. 操作员: REAL/LREAL_TO_<target type>

运算符:REAL

运算符:LREAL

例子

返回值

REAL_TO___UXINT

LREAL_TO___UXINT

REAL_TO___UXINT(1.234)
LREAL_TO___UXINT(0.987654321)

1

1

__UXINT、__XINT、__XWORD

REAL_TO___XINT

LREAL_TO___XINT

__UXINT、__XINT、__XWORD

REAL_TO___XWORD

LREAL_TO___XWORD

__UXINT、__XINT、__XWORD

REAL_TO_BIT

LREAL_TO_BIT

BIT

REAL_TO_BOOL

LREAL_TO_BOOL

LREAL_TO_BOOL(0.987654321)

TRUE

BOOL

REAL_TO_BYTE

LREAL_TO_BYTE

REAL_TO_BYTE(1.234)
LREAL_TO_BYTE(0.987654321)

1

Integer

REAL_TO_DATE

LREAL_TO_DATE

REAL_TO_DATE(1.234)
LREAL_TO_DATE(0.987654321)

D#1970-1-1

数据类型:DATE

REAL_TO_DINT

LREAL_TO_DINT

REAL_TO_DINT(1.234)

1

Integer

REAL_TO_DT

LREAL_TO_DT

REAL_TO_DT(1.234)

D#1970-1-1-0:0:1

数据类型:DATE

REAL_TO_DWORD

LREAL_TO_DWORD

REAL_TO_DWORD(1.234)

32#1

Integer

REAL_TO_INT

LREAL_TO_INT

REAL_TO_INT(-1.5)

-2

Integer

REAL_TO_LDATE

LREAL_TO_LDATE

REAL_TO_LDATE(1.234)

DT#1970-1-1

在内部,它首先被转换为 ULINT 然后该值以日期形式返回。

REAL_TO_LDT

LREAL_TO_LDT

LREAL_TO_DT(0.987654321)

D#1970-1-1-0:0:1

目标数据类型: LDATE_AND_TIME

数据类型:DATE

REAL_TO_LINT

LREAL_TO_LINT

REAL_TO_LINT(1.234)

1

Integer

REAL_TO_LTOD

LREAL_TO_LTOD

数据类型:DATE

REAL_TO_LREAL

-

REAL_TO_LREAL(1.234)

1.234

REAL, LREAL

REAL_TO_LTIME

LREAL_TO_LTIME

在内部,它首先被转换为 ULINT 然后该值将像 ns 中一样返回。

数据类型:TIME、LTIME

REAL_TO_LWORD

LREAL_TO_LWORD

Integer

-

LREAL_TO_REAL

REAL_TO_SINT

LREAL_TO_SINT

Integer

REAL_TO_STRING

LREAL_TO_STRING

REAL_TO_STRING(1.234)

'1.234'

STRING

REAL_TO_TIME

LREAL_TO_TIME

REAL_TO_TIME(1.234)

T#1ms

在内部,它首先被转换为 ULINT,然后以 ms 为单位返回值。

数据类型:TIME、LTIME

REAL_TO_TOD

LREAL_TO_TOD

REAL_TO_TOD(1.234)

TOD#0:0:0.001

在内部,它首先被转换为 UDINT,然后将值作为 TOD 返回。

语法:TOD#hh:mm:ss.sss

数据类型:DATE

REAL_TO_UDINT

LREAL_TO_UDINT

Integer

REAL_TO_UINT

LREAL_TO_UINT

Integer

REAL_TO_ULINT

LREAL_TO_ULINT

Integer

REAL_TO_USINT

LREAL_TO_USINT

Integer

REAL_TO__WORD

LREAL_TO__WORD

REAL_TO_WORD(1.2345678E11)

1

Integer

REAL_TO_WSTRING

LREAL_TO_WSTRING

REAL_TO_WSTRING(1.23456789E11)

"1.234"

WSTRING



四舍五入

转换为整数时,操作数向上或向下舍入为整数值。对于小数点后的 1 到 4,数字向下舍入。对于 5 到 9,数字向上取整。然后将四舍五入的数字转换为指定的整数类型。如果四舍五入的值超出整数值范围,则返回未定义的目标系统相关值。那时也可能出现异常错误。

转换为字符串

对于浮点数到字符串的转换,尾数的小数位数限制为 6。如果数字 < 1,则尾数为 1 <= m < 10.如果尾数在逗号后有更多位数,则将其四舍五入到第 6 位,然后进行转换。

对于返回值,字符串变量也可能被声明得太短。在这种情况下,返回字符串在右侧被截断。

170. 例子
_cds_img_fbd_convert_real_to_string.png