The A field descriptor transfers character or Hollerith values. It takes the following form:
A[w]
If the corresponding I/O list element has a character data type, character data is transmitted. If it has any other data type, Hollerith data is transmitted.
In an input statement, the A field descriptor transfers w
characters from the external record and assigns them to the
corresponding I/O list element. The maximum number of characters
that can be stored depends on the size of the I/O list element.
For character I/O list elements, the size is the length of either
the character variable, the character substring reference, or the
character array element.
For numeric I/O list elements, the size depends on the data
type, as listed in Table 8-3.
Table 8-3 Size Limit of Numeric Elements Using the A
Field Descriptor
I/O List Element | Maximum Number of Characters |
---|---|
BYTE | 1 |
LOGICAL*1 | 1 |
LOGICAL*2 | 2 |
LOGICAL (LOGICAL*4) | 4 |
LOGICAL*8[1] | 8 |
INTEGER*1 | 1 |
INTEGER*2 | 2 |
INTEGER (INTEGER*4) | 4 |
INTEGER*8[1] | 8 |
REAL (REAL*4) | 4 |
DOUBLE PRECISION (REAL*8) | 8 |
REAL*16[2] | 16 |
COMPLEX (COMPLEX*8) | 8[3] |
DOUBLE COMPLEX (COMPLEX*16) | 16[3] |
[1] Alpha only
|
If w is greater than the maximum number of characters that can be stored in the corresponding I/O list element, only the rightmost characters are assigned to that element. The leftmost excess characters are ignored.
If w is less than the number of characters that can be stored, w characters are assigned to the list element, left-justified, and trailing spaces are added to fill the element.
The following list illustrates valid input processing using the A field descriptor (the symbol ^ represents a nonprinting space character):
Format External Field Internal Representation Data Type 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)
In an output statement, the A field descriptor transfers the contents of the corresponding I/O list element to an external field w characters long. If w is greater than the list element size, the data appears in the field, right-justified, with leading spaces. If w is less than the list element, only the leftmost w characters are transferred.
The following list illustrates valid output processing using the A field descriptor (the symbol ^ represents a nonprinting space character):
Format Internal Value External Representation A5 OHMS ^OHMS A5 VOLTS VOLTS A5 AMPERES AMPER
If w is omitted, a default value is supplied.
If the I/O list element has a character data type, the default value is the length of the I/O list element. If the I/O list element has a numeric data type, the default value is the maximum number of characters that can be stored in a variable of that data type.