( |
index[:index] |
, 3
|
) |
< character-string, > |
||||||||||||||
< |
, > |
|||||||||||||||||
ALL |
< character-string> |
||||||
< |
> |
構文図で使用されている記号については、「構文記号」を参照してください。
array-init-definition
オプションを使用して、配列の初期値および定数値を定義します。
注意:variable-definition
オプションで、キーワード INIT
が初期化に使用されている場合、変数の内容に影響するステートメントによって値を変更することができます。キーワード CONST
が初期化に使用されている場合、値を変更しようとすると、コンパイラで拒否されます。
『プログラミングガイド』の「フィールドの定義」、および特に次のセクションも参照してください。
このセクションでは、次のトピックについて説明します。
再定義されたフィールドでは、array-init-definition
は許可されていません。
構文要素 | 説明 |
---|---|
ALL |
ALL オプション:
配列のすべてのオカレンスを、同じ値で初期化します。
|
index |
添字オプション:
単一の添字または添字の範囲を使用する場合、すべてのオカレンスに割り当てられる一意の値( 例: DEFINE DATA LOCAL 1 #FLD1 (A4/1:4) INIT (1:3) <'A'> /* A fills occurrences (1:3) 1 #FLD2 (A4/1:4) INIT (*) <'B'> /* B fills all occurrences 1 #FLD3 (A4/1:2,1:4) INIT (2,3) <'C'> /* C fills occurrence (2,3) END-DEFINE |
V |
添字表記 V:
特殊な添字表記 配列の1 つの次元のみに デフォルトで
DEFINE DATA LOCAL 1 #FLD4 (A4/1:3) INIT (V) <'A','B'> /* A fills (1) B fills (2) 1 #FLD5 (A4/1:2,1:3) INIT (1,V) <'C','D'> /* C, D fill (1,1:2) (2,V) <'F','G','H'> /* F, G, H fill (2,1:3) END-DEFINE |
constant |
定数値オプション:
配列を初期化する定数(値)。 値の指定がないオカレンスは、デフォルト値で初期化されます。 連続するオカレンスのリストでは、カンマ( 詳細については、『プログラミングガイド』の「ユーザー定義定数」を参照してください。 注意:
DEFINE DATA LOCAL 1 #FLD1 (A4/1:3) INIT <'A',,'C'> 1 #NUM1 (N4,2/1:3) INIT <1 , 2 , 3> 1 #NUM2 (N4,2/1:3) INIT <1;2;3> END-DEFINE |
system-variable |
システム変数オプション:
配列の初期値として Natural システム変数の値を指定することもできます。
|
FULL LENGTH
<character-string>
|
英数字/Unicode 変数の文字列オプション:
Natural データフォーマット A または U の変数の場合、
FULL LENGTH オプション:
LENGTH オプション:
各値が入力されるオカレンスを示す例: DEFINE DATA LOCAL 1 #FLD1 (A6/1:3) INIT ALL FULL LENGTH <'X'> /* XXXXXX in all occ. 1 #FLD2 (A6/1:3) INIT ALL LENGTH 5 <'NO'> /* NONON in all occ. 1 #FLD3 (A6/1:3) INIT (1:2) LENGTH 4 <'AB'> /* ABAB in occ (1:2) 1 #FLD4 (A6/1:3) INIT (V) FULL LENGTH <'X','Y'>/* XXXXXX in occ. (1), /* YYYYYY in occ. (2) END-DEFINE 1 つの |
注意:
初期値を配列に割り当てるための定義について、詳細は「例 2 - DEFINE DATA(配列の定義/初期化)」を参照してください。