演算子:XSIZEOF
演算子は、IEC61131-3規格の拡張です。
の XSIZEOF
operator は、渡された変数またはデータ型に必要なバイト数を決定します。
その際、常に符号なしの値が返されます。戻り値のデータ型 <return value>
は次のように固定されています。 ULINT
64 ビット プラットフォームおよびタイプ UDINT
他のすべてのプラットフォームで。すべてのプラットフォームで実行されるコードを生成するには、戻り値を次のように宣言します。 __UXINT
データ・タイプ。
構文:
<return value> := XSIZEOF( <variable> );
例 112. STでの例
PROGRAM PLC_PRG VAR uxiReturnValue : __UXINT; (* Datentyp bei 64-bit-Plattformen: ULINT *) aData_1 : ARRAY[0..4] OF INT; END_VAR
uxiReturnValue := XSIZEOF(aData_1);
結果:
uxiReturnValue = 10
ヒント
型の変数への代入の場合 __UXINT
を使用することをお勧めします。 XSIZEOF
演算子の代わりに SIZEOF
オペレーター。これは XSIZEOF
戻り値のデータ型はプラットフォームによって異なります。その結果、SIZEOF 演算子を使用する際の問題は発生しません。