Input list items in a list-directed READ statement are defined by
corresponding values in records. The form of each input value must be
acceptable for the type of the input list item. An input value has one
of the following forms:

c

r * c

r *

c is a literal constant of intrinsic type or a non-delimited
character constant. r is an unsigned, nonzero, integer literal
constant. A kind type parameter must not be specified for either
r or c. The constant c is interpreted as
though it had the same kind type parameter as the corresponding list
item.

The r * c form is equivalent to r successive appearances
of the constant. The r * form is equivalent to r
successive appearances of the null value.

A character value can be continued in as many records as required.
If the next effective item is of type character and the following are
true:

The character constant does not contain the value separators blank, comma,
or slash, and

The character constant does not cross a record boundary, and

The first nonblank character is not a quotation mark or apostrophe, and

The leading characters are not numeric followed by an asterisk, and

The character constant contains at least one character,

the delimiting apostrophes or quotation marks are not required. If
the delimiters are omitted, the character constant is terminated by the first
blank, comma, slash, or end-of-record, and apostrophes and double quotation
marks within the datum are not to be doubled.

The end of a record:

Has the same effect as a blank separator, unless the blank is within a
character literal constant or complex literal constant

Does not cause insertion of a blank or any other character in a character
value

Must not separate two apostrophes representing an apostrophe.

Two or more consecutive blanks are treated as a single blank unless the
blanks are within a character value.

A null value has no effect on the definition status of the corresponding
input list item.

A slash indicates the end of the input list, and list-directed formatting
is terminated. If additional items remain in the input list when a
slash is encountered, it is as if null values had been specified for those
items.

If an object of derived type occurs in an input list, it is treated as if
all the structure components were listed in the same order as in the
definition of the derived type. The ultimate components of the derived type must not be pointers or allocatables.

Complex constants are enclosed in parentheses with a comma separating the
real and imaginary parts, each produced as defined above for real
constants. The end of a record can occur between the comma and the
imaginary part only if the entire constant is as long as (or longer than) an
entire record. The only embedded blanks permitted within a complex constant are one
blank between the comma and the end of a record, and one blank at the
beginning of the next record.

Logical values are written as T for the value true and
F for the value false.

Character constants produced for an internal file, or for a file opened
without a DELIM= specifier or with a DELIM= specifier with a
value of NONE:

Are not delimited by apostrophes or quotation marks,

Are not separated from each other by value separators,

Have each internal apostrophe or double quotation mark represented
externally by one apostrophe or double quotation mark, and

Have a blank character inserted by the processor for carriage control at
the beginning of any record that begins with the continuation of a character
constant from the preceding record.

Undelimited character data may not be read back correctly using
list-directed input.

Character constants produced for a file opened with a
DELIM= specifier with a value of QUOTE are delimited by
double quotation marks, followed by a value separator, and have each internal
quote represented on the external medium by two contiguous double quotation
marks. Character constants produced for a file opened with a
DELIM= specifier with a value of APOSTROPHE are delimited by
apostrophes, followed by a value separator, and have each internal apostrophe
represented on the external medium by two contiguous apostrophes.

Slashes (as value separators) and null values are not written.

Arrays are written in column-major order.

You can specify a structure in an output list. On
list-directed output, a structure is treated as if all of its components were
listed in the same order as they are defined in the derived-type
definition. The ultimate components of the derived type must not be pointers or allocatables.