A 形編集記述子は,文字列またはホレリス値を転送します。これは次の形式を取ります。
A[w]
対応する I/O 並び項目が文字型ならば,文字データが転送されます。並び項目がそれ以外の型ならば,ホレリス・データが転送されます。
G 形編集記述子を使うと,文字データを編集することができます。これは Aw と同じ規則に従います。
入力処理の規則
入力時に A 形編集記述子は,外部欄から w 個の文字を転送し,対応する I/O 並び項目に代入します。
格納できる文字数の最大値は,I/O 並び項目の大きさに以下のように依存します。
文字データの場合,最大の大きさは対応する I/O 並び項目の長さになります。
非文字データの場合,最大の大きさは次表に示すように,そのデータ型に依存します。
A 形編集での非文字データの大きさ制限
I/O 並び要素 | 文字列の最大の大きさ |
---|---|
BYTE | 1 |
LOGICAL(1) または LOGICAL*1 | 1 |
LOGICAL(2) または LOGICAL*2 | 2 |
LOGICAL(4) または LOGICAL*4 | 4 |
LOGICAL(8) または LOGICAL*8 | 8 |
INTEGER(1) または INTEGER*1 | 1 |
INTEGER(2) または INTEGER*2 | 2 |
INTEGER(4) または INTEGER*4 | 4 |
INTEGER(8) または NTEGER*8 | 8 |
REAL(4) または REAL*4 | 4 |
DOUBLE PRECISION | 8 |
REAL(8) または REAL*8 | 8 |
REAL(16) または REAL*16 | 16 1 |
COMPLEX(4) または COMPLEX*8 | 8 2 |
DOUBLE COMPLEX | 16 2 |
COMPLEX(8) または COMPLEX*16 | 16 2 |
COMPLEX(16) または COMPLEX*32 | 32 1,2 |
1 VMS と U*X
2 複素数値は実数値の組として扱われるので,複素数編集には実数型編集記述子の組が必要となります (「複素数型編集」を参照)。 |
w が入力項目の長さ (len) 以上である場合,その項目には右端の文字が代入されます。左側の余った文字は無視されます。
w が len よりも小さいか,格納可能な文字数よりも小さい場合,並び項目に w 個の文字が左詰めで代入され,末尾に空白が追加されます。
次に,A 形編集記述子を使った入力の例を示します ('^' は,空白文字を表しています)。
書式 入力 値 データ型 A6 PAGE^# # CHARACTER(LEN=1) A6 PAGE^# E^# CHARACTER(LEN=3) A6 PAGE^# PAGE^# CHARACTER(LEN=6) A6 PAGE^# PAGE^#^^ CHARACTER(LEN=8) A6 PAGE^# # LOGICAL(1) A6 PAGE^# ^# INTEGER(2) A6 PAGE^# GE^# REAL(4) A6 PAGE^# PAGE^#^^ REAL(8)
出力処理の規則
出力時に A 形編集記述子は,対応する I/O 並び項目の内容を,w 文字の長さの外部欄に転送します。
w が並び項目の大きさよりも大きい場合,データは出力欄に右詰めで転送され,先頭に空白が追加されます。w が並び項目の大きさ以下ならば,左端の w 文字が転送されます。
次に,A 形編集記述子を使った出力の例を示します ('^' は,空白文字を表しています)。
書式 値 出力 A5 OHMS ^OHMS A5 VOLTS VOLTS A5 AMPERES AMPER
関連情報
データ編集記述子の形式については,「データ編集記述子の形式」を参照してください。