Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ putw(3S) — A/UX 3.0.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

fclose(3S)

ferror(3S)

fopen(3S)

fread(3S)

getc(3S)

printf(3S)

puts(3S)

setbuf(3S)




putc(3S) putc(3S)
NAME putc, putchar, fputc, putw - put a character or word on a stream SYNOPSIS #include <stdio.h> int putc(c, stream) int c; FILE *stream; int putchar(c) int c; int fputc(c, stream) int c; FILE *stream; int putw(w, stream) int w; FILE *stream; DESCRIPTION The putc macro writes the character c onto the output stream at the position where the file pointer, if defined, is pointing. The putchar macro is defined as putc(c, stdout). fputc behaves like putc, but is a function rather than a macro. fputc runs more slowly than putc, but it takes less space per invocation and its name can be passed as an argument to a function. putw writes the word (32-bit integer on the Macintosh II) w to the output stream at the position at which the file pointer, if defined, is pointing. putw neither assumes nor causes special alignment in the file. Output streams, with the exception of the standard error stream stderr, are by default buffered if the output refers to a file and line-buffered if the output refers to a terminal. The standard error output stream stderr is by default unbuffered, but use of freopen (see fopen(3S)) causes it to become buffered or line-buffered. When an output stream is unbuffered information, it is queued for writing on the destination file or terminal as soon as written; when it is buffered, many characters are saved up and written as a block; when it is line-buffered, each line of output is queued for writing on the destination terminal as soon as the line is completed (i.e., as soon as a newline character is written or terminal input is requested). setbuf(3S) may be used to change the stream's buffering strategy. January 1992 1



putc(3S) putc(3S)
STATUS MESSAGES AND VALUES On success, these functions each return the value they have written. On failure, they return the constant EOF. This occurs if the file stream is not open for writing or if the output file cannot be grown. Because EOF is a valid integer, ferror(3S) should be used to detect putw errors. LIMITATIONS Because it is implemented as a macro, putc treats incorrectly a stream argument with side effects. In particular, putc(c, *f++); doesn't work sensibly. fputc should be used instead. Because of possible differences in word length and byte ordering, files written using putw are machine-dependent and may not be read using getw on a different processor. SEE ALSO fclose(3S), ferror(3S), fopen(3S), fread(3S), getc(3S), printf(3S), puts(3S), setbuf(3S) 2 January 1992

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026