変換: REAL、LREAL
重要
浮動小数点数がターゲットデータ型の値の範囲内にある場合、変換はすべてのシステムで同じように動作します。
浮動小数点数が範囲制限を超える場合、数値の最初のバイトは考慮されません。
演算子は、浮動小数点数を指定されたデータ型に変換し、型変換された値を返します。該当する場合、変換は四捨五入されます。
の場合 REAL_TO_<ターゲットタイプ> 変換では、値はまず UDINT
そして、その後にターゲット タイプにキャストします。
の場合 LREAL_TO_<ターゲットタイプ> 変換では、値はまず ULINT
そして、その後にターゲット タイプにキャストします。
呼び出し構文: REAL_TO_<ターゲットタイプ>(<オペランド>)、 LREAL_TO_<ターゲットタイプ>(<オペランド>)
オペランド | タイプ | 説明 |
---|---|---|
変数またはリテラル |
|
REAL/LREAL_TO_<target type>
オペレーター: REAL | オペレーター: LREAL | 例 | 戻り値 | |
---|---|---|---|---|
|
| REAL_TO___UXINT(1.234) LREAL_TO___UXINT(0.987654321) |
| |
|
| |||
|
| |||
|
| |||
|
| LREAL_TO_BOOL(0.987654321) |
| |
|
| REAL_TO_BYTE(1.234) LREAL_TO_BYTE(0.987654321) |
| |
|
| REAL_TO_DATE(1.234) LREAL_TO_DATE(0.987654321) |
| |
|
| REAL_TO_DINT(1.234) |
| |
|
| REAL_TO_DT(1.234) |
| |
|
| REAL_TO_DWORD(1.234) |
| |
|
| REAL_TO_INT(-1.5) |
| |
|
| REAL_TO_LDATE(1.234) |
| 内部的には、まず |
|
| LREAL_TO_DT(0.987654321) |
| 対象データ型: |
|
| REAL_TO_LINT(1.234) |
| |
|
| |||
| - | REAL_TO_LREAL(1.234) |
| |
|
| 内部的には、まず | ||
|
| |||
- |
| |||
|
| |||
|
| REAL_TO_STRING(1.234) |
| |
|
| REAL_TO_TIME(1.234) |
| 内部的には、最初に ULINT にキャストされ、その後値が ms 単位で返されます。 |
|
| REAL_TO_TOD(1.234) |
| 内部的には、最初に UDINT にキャストされ、その後値が TOD として返されます。 構文: TOD#hh:mm:ss.sss |
|
| |||
|
| |||
|
| |||
|
| |||
|
| REAL_TO_WORD(1.2345678E11) |
| |
|
| REAL_TO_WSTRING(1.23456789E11) |
|
丸め
整数に変換する場合、オペランドは整数値に切り上げまたは切り捨てられます。小数点以下1〜4の場合、数値は切り捨てられます。 5から9の場合、数値は切り上げられます。次に、丸められた数値が指定された整数型に変換されます。丸められた値が整数値の範囲外の場合、未定義のターゲットシステム依存値が返されます。その場合、例外エラーも発生する可能性があります。
文字列への変換
浮動小数点数を文字列に変換する場合、仮数の小数点以下の桁数は6に制限されます。数値が1未満の場合、仮数は次のようになります。 1 <= m < 10
。仮数の桁数がコンマの後にある場合は、6桁目に丸められてから、変換されます。
文字列変数は、戻り値に対して短すぎると宣言される場合もあります。この場合、戻り文字列は右側で切り捨てられます。
