| 1 | .th PUTCHAR III 5/10/73 |
| 2 | .sh NAME |
| 3 | putchar \*- write character |
| 4 | .sh SYNOPSIS |
| 5 | .ft B |
| 6 | putchar(ch) |
| 7 | .s3 |
| 8 | flush( ) |
| 9 | .ft R |
| 10 | .sh DESCRIPTION |
| 11 | .it Putchar |
| 12 | writes out its argument and returns it unchanged. |
| 13 | The low-order byte of the |
| 14 | argument is always written; |
| 15 | the high-order byte is written only if it is |
| 16 | non-null. |
| 17 | Unless other arrangements have been made, |
| 18 | .it putchar |
| 19 | writes in |
| 20 | unbuffered fashion on the standard output file. |
| 21 | .s3 |
| 22 | Associated with this routine is an external variable |
| 23 | .it fout |
| 24 | which has the |
| 25 | structure of a buffer discussed under putc (III). |
| 26 | If the file descriptor part of this structure (first word) |
| 27 | is not 1, output via |
| 28 | .it putchar |
| 29 | is buffered. |
| 30 | To achieve buffered output one may say, for example, |
| 31 | .s3 |
| 32 | .nf |
| 33 | fout = dup(1); or |
| 34 | fout = fcreat(...); |
| 35 | .s3 |
| 36 | .fi |
| 37 | In such a case |
| 38 | .it flush |
| 39 | must be called |
| 40 | before the program terminates in order to flush out |
| 41 | the buffered output. |
| 42 | .it Flush |
| 43 | may be called at any time. |
| 44 | .sh "SEE ALSO" |
| 45 | putc(III) |
| 46 | .sh BUGS |
| 47 | The |
| 48 | .it fout |
| 49 | notion is kludgy. |