(cited from http://www.fortran.com/F77_std/rjcnf0001-sh-13.html)


13 FORMAT SPECIFICATION

A format used in conjunction with formatted input/output statements provides information that directs the editing between the internal representation and the character strings of a record or a sequence of records in the file.

A format specification provides explicit editing information. An asterisk (*) as a format identifier in an input/output statement indicates list-directed formatting ( 13.6).

13.1 Format Specification Methods

Format specifications may be given:
  1. In FORMAT statements
  2. As values of character arrays, character variables, or other character expressions

13.1.1 FORMAT Statement.

The form of a FORMAT statement is:
FORMAT fs
where fs is a format specification, as described in 13.2. The statement must be labeled.

13.1.2 Character Format Specification.

If the format identifier ( 12.4) in a formatted input/output statement is a character array name, character variable name, or other character expression, the leftmost character positions of the specified entity must be in a defined state with character data that constitute a format specification when the statement is executed.

A character format specification must be of the form described in 13.2. Note that the form begins with a left parenthesis and ends with a right parenthesis. Character data may follow the right parenthesis that ends the format specification, with no effect on the format specification. Blank characters may precede the format specification.

If the format identifier is a character array name, the length of the format specification may exceed the length of the first element of the array; a character array format specification is considered to be a concatenation of all the array elements of the array in the order given by array element ordering ( 5.2.4). However, if a character array element name is specified as a format identifier, the length of the format specification must not exceed the length of the array element.

13.2 Form of a Format Specification

The form of a format specification is:
( [flist] )
where flist is a list ( 2.10). The forms of the flist items are:
[r] ed
ned
[r] fs

The comma used to separate list items in the list flist may be omitted as follows:

  1. Between a P edit descriptor and an immediately following F, E, D, or G edit descriptor ( 13.5.9)
  2. Before or after a slash edit descriptor ( 13.5.4)
  3. Before or after a colon edit descriptor ( 13.5.5)

13.2.1 Edit Descriptors.

An edit descriptor is either a repeatable edit descriptor or a nonrepeatable edit descriptor.

The forms of a repeatable edit descriptor are:

  1. Iw
  2. Iw.m
  3. Fw.d
  4. Ew.d
  5. Ew.dEe
  6. Dw.d
  7. Gw.d
  8. Gw.dEe
  9. Lw
  10. A
  11. Aw

The forms of a nonrepeatable edit descriptor are:

  1. 'h h ... h ' 1 2 n
  2. nHh h ... h 1 2 n
  3. Tc
  4. TLc
  5. TRc
  6. nX
  7. /
  8. :
  9. S
  10. SP
  11. SS
  12. kP
  13. BN
  14. BZ

13.3 Interaction Between Input/Output List and Format

The beginning of formatted data transfer using a format specification ( 12.9.5.2.1) initiates format control. Each action of format control depends on information jointly provided by:
  1. the next edit descriptor contained in the format specification, and
  2. the next item in the input/output list, if one exists.

If an input/output list specifies at least one list item, at least one repeatable edit descriptor must exist in the format specification. Note that an empty format specification of the form ( ) may be used only if no list items are specified; in this case, one input record is skipped or one output record containing no characters is written. Except for an edit descriptor preceded by a repeat specification, r ed , and a format specification preceded by a repeat specification, r(flist) , a format specification is interpreted from left to right. A format specification or edit descriptor preceded by a repeat specification r is processed as a list of r format specifications or edit descriptors identical to the format specification or edit descriptor without the repeat specification. Note that an omitted repeat specification is treated the same as a repeat specification whose value is one.

To each repeatable edit descriptor interpreted in a format specification, there corresponds one item specified by the input/output list ( 12.8.2), except that a list item of type complex requires the interpretation of two F, E, D, or G edit descriptors. To each P, X, T, TL, TR, S, SP, SS, H, BN, BZ, slash, colon, or apostrophe edit descriptor, there is no corresponding item specified by the input/output list, and format control communicates information directly with the record.

Whenever format control encounters a repeatable edit descriptor in a format specification, it determines whether there is a corresponding item specified by the input/output list. If there is such an item, it transmits appropriately edited information between the item and the record, and then format control proceeds. If there is no corresponding item, format control terminates.

If format control encounters a colon edit descriptor in a format specification and another list item is not specified, format control terminates.

If format control encounters the rightmost parenthesis of a complete format specification and another list item is not specified, format control terminates. However, if another list item is specified, the file is positioned at the beginning of the next record and format control then reverts to the beginning of the format specification terminated by the last preceding right parenthesis. If there is no such preceding right parenthesis, format control reverts to the first left parenthesis of the format specification. If such reversion occurs, the reused portion of the format specification must contain at least one repeatable edit descriptor. If format control reverts to a parenthesis that is preceded by a repeat specification, the repeat specification is reused. Reversion of format control, of itself, has no effect on the scale factor ( 13.5.7), the S, SP, or SS edit descriptor sign control ( 13.5.6), or the BN or BZ edit descriptor blank control ( 13.5.8).

13.4 Positioning by Format Control

After each I, F, E, D, G, L, A, H, or apostrophe edit descriptor is processed, the file is positioned after the last character read or written in the current record.

After each T, TL, TR, X, or slash edit descriptor is processed, the file is positioned as described in 13.5.3 and 13.5.4.

If format control reverts as described in 13.3, the file is positioned in a manner identical to the way it is positioned when a slash edit descriptor is processed ( 13.5.4).

During a read operation, any unprocessed characters of the record are skipped whenever the next record is read.

13.5 Editing

Edit descriptors are used to specify the form of a record and to direct the editing between the characters in a record and internal representations of data.

A field is a part of a record that is read on input or written on output when format control processes one I, F, E, D, G, L, A, H, or apostrophe edit descriptor. The field width is the size in characters of the field.

The internal representation of a datum corresponds to the internal representation of a constant of the corresponding type (Section 4).

13.5.1 Apostrophe Editing.

The apostrophe edit descriptor has the form of a character constant. It causes characters to be written from the enclosed characters (including blanks) of the edit descriptor itself. An apostrophe edit descriptor must not be used on input.

The width of the field is the number of characters contained in, but not including, the delimiting apostrophes. Within the field, two consecutive apostrophes with no intervening blanks are counted as a single apostrophe.

13.5.2 H Editing.

The nH edit descriptor causes character information to be written from the n characters (including blanks) following the H of the nH edit descriptor in the format specification itself. An H edit descriptor must not be used on input.

Note that if an H edit descriptor occurs within a character constant and includes an apostrophe, the apostrophe must be represented by two consecutive apostrophes, which are counted as one character in specifying n .

13.5.3 Positional Editing.

The T, TL, TR, and X edit descriptors specify the position at which the next character will be transmitted to or from the record.

The position specified by a T edit descriptor may be in either direction from the current position. On input, this allows portions of a record to be processed more than once, possibly with different editing.

The position specified by an X edit descriptor is forward from the current position. On input, a position beyond the last character of the record may be specified if no characters are transmitted from such positions.

On output, a T, TL, TR, or X edit descriptor does not by itself cause characters to be transmitted and therefore does not by itself affect the length of the record. If characters are transmitted to positions at or after the position specified by a T, TL, TR, or X edit descriptor, positions skipped and not previously filled are filled with blanks. The result is as if the entire record were initially filled with blanks.

On output, a character in the record may be replaced. However, a T, TL, TR, or X edit descriptor never directly causes a character already placed in the record to be replaced. Such edit descriptors may result in positioning so that subsequent editing causes a replacement.

13.5.3.1 T, TL, and TR Editing.

The Tc edit descriptor indicates that the transmission of the next character to or from a record is to occur at the cth character position.

The TLc edit descriptor indicates that the transmission of the next character to or from the record is to occur at the character position c characters backward from the current position. However, if the current position is less than or equal to position c , the TLc edit descriptor indicates that the transmission of the next character to or from the record is to occur at position one of the current record.

The TRc edit descriptor indicates that the transmission of the next character to or from the record is to occur at the character position c characters forward from the current position.

13.5.3.2 X Editing.

The nX edit descriptor indicates that the transmission of the next character to or from a record is to occur at the position n characters forward from the current position.

13.5.4 Slash Editing.

The slash edit descriptor indicates the end of data transfer on the current record.

On input from a file connected for sequential access, the remaining portion of the current record is skipped and the file is positioned at the beginning of the next record. This record becomes the current record. On output to a file connected for sequential access, a new record is created and becomes the last and current record of the file.

Note that a record that contains no characters may be written on output. If the file is an internal file or a file connected for direct access, the record is filled with blank characters. Note also that an entire record may be skipped on input.

For a file connected for direct access, the record number is increased by one and the file is positioned at the beginning of the record that has that record number. This record becomes the current record.

13.5.5 Colon Editing.

The colon edit descriptor terminates format control if there are no more items in the input/output list ( 13.3). The colon edit descriptor has no effect if there are more items in the input/output list.

13.5.6 S, SP, and SS Editing.

The S, SP, and SS edit descriptors may be used to control optional plus characters in numeric output fields. At the beginning of execution of each formatted output statement, the processor has the option of producing a plus in numeric output fields. If an SP edit descriptor is encountered in a format specification, the processor must produce a plus in any subsequent position that normally contains an optional plus. If an SS edit descriptor is encountered, the processor must not produce a plus in any subsequent position that normally contains an optional plus. If an S edit descriptor is encountered, the option of producing the plus is restored to the processor.

The S, SP, and SS edit descriptors affect only I, F, E, D, and G editing during the execution of an output statement. The S, SP, and SS edit descriptors have no effect during the execution of an input statement.

13.5.7 P Editing.

A scale factor is specified by a P edit descriptor, which is of the form:
kP
where k is an optionally signed integer constant, called the scale factor.

13.5.7.1 Scale Factor.

The value of the scale factor is zero at the beginning of execution of each input/output statement. It applies to all subsequently interpreted F, E, D, and G edit descriptors until another scale factor is encountered, and then that scale factor is established. Note that reversion of format control ( 13.3) does not affect the established scale factor.

The scale factor k affects the appropriate editing in the following manner:

  1. On input, with F, E, D, and G editing (provided that no exponent exists in the field) and F output editing, the scale factor effect is that the externally represented number equals the internally represented number multiplied by 10**k .
  2. On input, with F, E, D, and G editing, the scale factor has no effect if there is an exponent in the field.
  3. On output, with E and D editing, the basic real constant ( 4.4.1) part of the quantity to be produced is multiplied by 10**k and the exponent is reduced by k .
  4. On output, with G editing, the effect of the scale factor is suspended unless the magnitude of the datum to be edited is outside the range that permits the use of F editing. If the use of E editing is required, the scale factor has the same effect as with E output editing.

13.5.8 BN and BZ Editing.

The BN and BZ edit descriptors may be used to specify the interpretation of blanks, other than leading blanks, in numeric input fields. At the beginning of execution of each formatted input statement, such blank characters are interpreted as zeros or are ignored, depending on the value of the BLANK= specifier ( 12.10.1) currently in effect for the unit. If a BN edit descriptor is encountered in a format specification, all such blank characters in succeeding numeric input fields are ignored. The effect of ignoring blanks is to treat the input field as if blanks had been removed, the remaining portion of the field right-justified, and the blanks replaced as leading blanks. However, a field of all blanks has the value zero. If a BZ edit descriptor is encountered in a format specification, all such blank characters in succeeding numeric input fields are treated as zeros.

The BN and BZ edit descriptors affect only I, F, E, D, and G editing during execution of an input statement. They have no effect during execution of an output statement.

13.5.9 Numeric Editing.

The I, F, E, D, and G edit descriptors are used to specify input/output of integer, real, double precision, and complex data. The following general rules apply:
  1. On input, leading blanks are not significant. The interpretation of blanks, other than leading blanks, is determined by a combination of any BLANK= specifier and any BN or BZ blank control that is currently in effect for the unit ( 13.5.8). Plus signs may be omitted. A field of all blanks is considered to be zero.
  2. On input, with F, E, D, and G editing, a decimal point appearing in the input field overrides the portion of an edit descriptor that specifies the decimal point location. The input field may have more digits than the processor uses to approximate the value of the datum.
  3. On output, the representation of a positive or zero internal value in the field may be prefixed with a plus, as controlled by the S, SP, and SS edit descriptors ( 13.5.6) or the processor. The representation of a negative internal value in the field must be prefixed with a minus. However, the processor must not produce a negative signed zero in a formatted output record.
  4. On output, the representation is right-justified in the field. If the number of characters produced by the editing is smaller than the field width, leading blanks will be inserted in the field.
  5. On output, if the number of characters produced exceeds the field width or if an exponent exceeds its specified length using the Ew.dEe or Gw.dEe edit descriptor, the processor will fill the entire field of width w with asterisks. However, the processor must not produce asterisks if the field width is not exceeded when optional characters are omitted. Note that when an SP edit descriptor is in effect, a plus is not optional ( 13.5.6).

13.5.9.1 Integer Editing.

The Iw and Iw.m edit descriptors indicate that the field to be edited occupies w positions. The specified input/output list item must be of type integer. On input, the specified list item will become defined with an integer datum. On output, the specified list item must be defined with an integer datum.

On input, an Iw.m edit descriptor is treated identically to an Iw edit descriptor.

In the input field, the character string must be in the form of an optionally signed integer constant, except for the interpretation of blanks ( 13.5.9, item (1)).

The output field for the Iw edit descriptor consists of zero or more leading blanks followed by a minus if the value of the internal datum is negative, or an optional plus otherwise, followed by the magnitude of the internal value in the form of an unsigned integer constant without leading zeros. Note that an integer constant always consists of at least one digit.

The output field for the Iw.m edit descriptor is the same as for the Iw edit descriptor, except that the unsigned integer constant consists of at least m digits and, if necessary, has leading zeros. The value of m must not exceed the value of w . If m is zero and the value of the internal datum is zero, the output field consists of only blank characters, regardless of the sign control in effect.

13.5.9.2 Real and Double Precision Editing.

The F, E, D, and G edit descriptors specify the editing of real, double precision, and complex data. An input/output list item corresponding to an F, E, D, or G edit descriptor must be real, double precision, or complex. An input list item will become defined with a datum whose type is the same as that of the list item. An output list item must be defined with a datum whose type is the same as that of the list item.

13.5.9.2.1 F Editing.
The Fw.d edit descriptor indicates that the field occupies w positions, the fractional part of which consists of d digits.

The input field consists of an optional sign, followed by a string of digits optionally containing a decimal point. If the decimal point is omitted, the rightmost d digits of the string, with leading zeros assumed if necessary, are interpreted as the fractional part of the value represented. The string of digits may contain more digits than a processor uses to approximate the value of the constant. The basic form may be followed by an exponent of one of the following forms:

  1. Signed integer constant
  2. E followed by zero or more blanks, followed by an optionally signed integer constant
  3. D followed by zero or more blanks, followed by an optionally signed integer constant

An exponent containing a D is processed identically to an exponent containing an E.

The output field consists of blanks, if necessary, followed by a minus if the internal value is negative, or an optional plus otherwise, followed by a string of digits that contains a decimal point and represents the magnitude of the internal value, as modified by the established scale factor and rounded to d fractional digits. Leading zeros are not permitted except for an optional zero immediately to the left of the decimal point if the magnitude of the value in the output field is less than one. The optional zero must appear if there would otherwise be no digits in the output field.

13.5.9.2.2 E and D Editing.
The Ew.d, Dw.d, and Ew.dEe edit descriptors indicate that the external field occupies w positions, the fractional part of which consists of d digits, unless a scale factor greater than one is in effect, and the exponent part consists of e digits. The e has no effect on input.

The form of the input field is the same as for F editing ( 13.5.9.2.1).

The form of the output field for a scale factor of zero is:

[+] [0] . x x ...x  exp
                             1 2    d
__________________________________________________
    |           |                  |                  |
    | Edit      |  Absolute Value  |  Form of         |
    |_Descriptor|__of_Exponent_____|__Exponent________|
    |           |                  |                  |
    | Ew.d      |  |exp|<=99       |  E+z z  or +0z z |
    |           | _________________|_____1_2_______1_2|
    |           |                  |                  |
    |___________|__99<|exp|<=999___|__+z1z2z3_________|
    |           |                  |                  |
    | Ew.dEe    |  |exp|<=(10**e)-1|  E+z z ...z      |
    |___________|__________________|_____1_2____e_____|
    |           |                  |                  |
    | Dw.d      |  |exp|<=99       |  D+z1z2 or E+z1z2|
    |           | _________________|__or_+_z1z2_______|
    |           |                  |                  |
    |           |  99<|exp|<=999   |  +z z z          |
    |___________|__________________|____1_2_3_________|

where z is a digit. The sign in the exponent is required. A plus sign must be used if the exponent value is zero. The forms Ew.d and Dw.d must not be used if |exp| > 999 .

The scale factor k controls the decimal normalization ( 13.5.7). If -d < k <= 0 , the output field contains exactly |k| leading zeros and d - |k| significant digits after the decimal point. If 0 < k < d + 2 , the output field contains exactly k significant digits to the left of the decimal point and d - k + 1 significant digits to the right of the decimal point. Other values of k are not permitted.

13.5.9.2.3 G Editing.
The Gw.d and Gw.dEe edit descriptors indicate that the external field occupies w positions, the fractional part of which consists of d digits, unless a scale factor greater than one is in effect, and the exponent part consists of e digits.

G input editing is the same as for F editing ( 13.5.9.2.1).

The method of representation in the output field depends on the magnitude of the datum being edited. Let N be the magnitude of the internal datum. If N < 0.1 or N >= 10**d,Gw.d output editing is the same as kPEw.d output editing and Gw.dEe output editing is the same as kPEw.dEe output editing, where k is the scale factor currently in effect. If N is greater than or equal to 0.1 and is less than 10**d , the scale factor has no effect, and the value of N determines the editing as follows:

________________________________________________
     |                       |                       |
     |_Magnitude_of_Datum____|__Equivalent_Conversion|
     |                       |                       |
     | 0.1=N<=1              |  F(w-n).d, n('b')     |
     |                       |                       |
     | 1<=N<10               |  F(w-n).(d-1), n('b') |
     |                       |                       |
     |   .                   |        .              |
     |   .                   |        .              |
     |   .                   |        .              |
     | 10**(d-2)<=N<10**(d-1)|  F(w-n).1, n('b')     |
     |                       |                       |
     | 10**(d-1)<=N<10**d    |  F(w-n).0, n('b')     |
     |                       |                       |
     |_______________________|_______________________|

Note that the scale factor has no effect unless the magnitude of the datum to be edited is outside of the range that permits effective use of F editing.

13.5.9.2.4 Complex Editing.
A complex datum consists of a pair of separate real data; therefore, the editing is specified by two successively interpreted F, E, D, or G edit descriptors. The first of the edit descriptors specifies the real part; the second specifies the imaginary part. The two edit descriptors may be different. Note that nonrepeatable edit descriptors may appear between the two successive F, E, D, or G edit descriptors.

13.5.10 L Editing.

The Lw edit descriptor indicates that the field occupies w positions. The specified input/output list item must be of type logical. On input, the list item will become defined with a logical datum. On output, the specified list item must be defined with a logical datum. The input field consists of optional blanks, optionally followed by a decimal point, followed by a T for true or F for false. The T or F may be followed by additional characters in the field. Note that the logical constants .TRUE. and .FALSE. are acceptable input forms.

The output field consists of w - 1 blanks followed by a T or F, as the value of the internal datum is true or false, respectively.

13.5.11 A Editing.

The A[w] edit descriptor is used with an input/output list item of type character. On input, the input list item will become defined with character data. On output, the output list item must be defined with character data.

If a field width w is specified with the A edit descriptor, the field consists of w characters. If a field width w is not specified with the A edit descriptor, the number of characters in the field is the length of the character input/output list item.

Let len be the length of the input/output list item. If the specified field width w for A input is greater than or equal to len , the rightmost len characters will be taken from the input field. If the specified field width is less than len , the w characters will appear left-justified with len-w trailing blanks in the internal representation.

If the specified field width w for A output is greater than len , the output field will consist of w-len blanks followed by the len characters from the internal representation. If the specified field width w is less than or equal to len , the output field will consist of the leftmost w characters from the internal representation.

13.6 List-Directed Formatting

The characters in one or more list-directed records constitute a sequence of values and value separators. The end of a record has the same effect as a blank character, unless it is within a character constant. Any sequence of two or more consecutive blanks is treated as a single blank, unless it is within a character constant.

Each value is either a constant, a null value, or of one of the forms:

r*c
r*
where r is an unsigned, nonzero, integer constant. The r*c form is equivalent to r successive appearances of the constant c , add the r* form is equivalent to r successive appearances of the null values. Neither of these forms may contain embedded blanks, except where permitted within the constant c .

A value separator is one of the following:

  1. A comma optionally preceded by one or more contiguous blanks and optionally followed by one or more contiguous blanks
  2. A slash optionally preceded by one or more contiguous blanks and optionally followed by one or more contiguous blanks
  3. One or more contiguous blanks between two constants or following the last constant

13.6.1 List-Directed Input.

Input forms acceptable to format specifications for a given type are acceptable for list-directed formatting, except as noted below. The form of the input value must be acceptable for the type of the input list item. Blanks are never used as zeros, and embedded blanks are not permitted in constants, except within character constants and complex constants as specified below. Note that the end of a record has the effect of a blank, except when it appears within a character constant.

When the corresponding input list item is of type real or double precision, the input form is that of a numeric input field. A numeric input field is a field suitable for F editing ( 13.5.9.2) that is assumed to have no fractional digits unless a decimal point appears within the field.

When the corresponding list item is of type complex, the input form consists of a left parenthesis followed by an ordered pair of numeric input fields separated by a comma, and followed by a right parenthesis. The first numeric input field is the real part of the complex constant and the second is the imaginary part. Each of the numeric input fields may be preceded or followed by blanks. The end of a record may occur between the real part and the comma or between the comma and the imaginary part.

When the corresponding list item is of type logical, the input form must not include either slashes or commas among the optional characters permitted for L editing ( 13.5.10).

When the corresponding list item is of type character, the input form consists of a nonempty string of characters enclosed in apostrophes. Each apostrophe within a character constant must be represented by two consecutive apostrophes without an intervening blank or end of record. Character constants may be continued from the end of one record to the beginning of the next record. The end of the record does not cause a blank or any other character to become part of the constant. The constant may be continued on as many records as needed. The characters blank, comma, and slash may appear in character constants.

Let len be the length of the list item, and let w be the length of the character constant. If len is less than or equal to w , the leftmost len characters of the constant are transmitted to the list item. If len is greater than w , the constant is transmitted to the leftmost w characters of the list item and the remaining len-w characters of the list item are filled with blanks. Note that the effect is as though the constant were assigned to the list item in a character assignment statement ( 10.4).

A null value is specified by having no characters between successive value separators, no characters preceding the first value separator in the first record read by each execution of a list-directed input statement, or the r* form. A null value has no effect on the definition status of the corresponding input list item. If the input list item is defined, it retains its previous value; if it is undefined, it remains undefined. A null value may not be used as either the real or imaginary part of a complex constant, but a single null value may represent an entire complex constant. Note that the end of a record following any other separator, with or without separating blanks, does not specify a null value.

A slash encountered as a value separator during execution of a list-directed input statement causes termination of execution of that input statement after the assignment of the previous value. If there are additional items in the input list, the effect is as if null values had been supplied for them.

Note that all blanks in a list-directed input record are considered to be part of some value separator except for the following:

  1. Blanks embedded in a character constant
  2. Embedded blanks surrounding the real or imaginary part of a complex constant
  3. Leading blanks in the first record read by each execution of a list-directed input statement, unless immediately followed by a slash or comma

13.6.2 List-Directed Output.

The form of the values produced is the same as that required for input, except as noted otherwise. With the exception of character constants, the values are separated by one of the following:
  1. One or more blanks
  2. A comma optionally preceded by one or more blanks and optionally followed by O<one or more blanks

The processor may begin new records as necessary, but, except for complex constants and character constants, the end of a record must not occur within a constant and blanks must not appear within a constant.

Logical output constants are T for the value true and F for the value false.

Integer output constants are produced with the effect of an Iw edit descriptor, for some reasonable value of w .

Real and double precision constants are produced with the effect of either an F edit descriptor or an E edit descriptor, depending on the magnitude x of the value and a range 10**d <= x < 10**d 1 2 , where d 1 and d 2 are processor-dependent integer values. If the magnitude x is within this range, the constant is produced using OPFw.d ; otherwise, 1PEw.dEe is used. Reasonable processor-dependent values of w , d , and e are used for each of the cases involved.

Complex constants are enclosed in parentheses, with a comma separating the real and imaginary parts. The end of a record may 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 between the comma and the end of a record and one blank at the beginning of the next record.

Character constants produced are not delimited by apostrophes, are not preceded or followed by a value separator, have each internal apostrophe represented externally by one apostrophe, 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.

If two or more successive values in an output record produced have identical values, the processor has the option of producing a repeated constant of the form r*c instead of the sequence of identical values.

Slashes, as value separators, and null values are not produced by list-directed formatting.

Each output record begins with a blank character to provide carriage control when the record is printed.

'




[Contents] [Previous] [Next]
This document was translated by troff2html v0.21 on August 16, 1995.