This topic describes the American Standards Association (ASA) text files, the control characters used in ASA files, how z/OS® XL C/C++ translates the control characters, and how z/OS XL C/C++ treats ASA files during input and output. The first column of each record in an ASA file contains a control character (' ', '0', '-', '1', or '+') when it appears in the external medium.
z/OS XL C/C++ translates control characters in ASA files opened for text processing (r, w, a, r+, w+, a+ functions). On input, z/OS XL C/C++ translates ASA characters to sequences of control characters, as shown in Table 1. On output, z/OS XL C/C++ performs the reverse translation. The following sequences of control characters are translated, and the resultant ASA character becomes the first character of the following record.
| C Control Character Sequence | ASA Character | Description |
|---|---|---|
| \n | ' ' | skip one line |
| \n\n | '0' | skip two lines |
| \n\n\n | '-' | skip three lines |
| \f | '1' | new page |
| \r | '+' | overstrike |
If you are writing to the first record or byte of the file and the output data does not start with a translatable sequence of C control characters, the ' ' ASA control character is written to the file before the specified data.
z/OS XL C/C++ does not translate or verify control characters when you open an ASA file for binary, record I/O, or blocked I/O.