Contents|Index|Previous|Next

putc
[write a character (macro)]

SYNOPSIS
#include <stdio.h>
int putc(int ch, FILE *fp);

DESCRIPTION
putc is a macro, defined in stdio.h. putc writes the argument, ch, to the file or stream identified by fp, after converting it from an int to an unsigned char.

If the file was opened with append mode (or if the stream cannot support positioning), then the new character goes at the end of the file or stream. Otherwise, the new character is written at the current value of the position indicator, and the position indicator advances by one.

For a subroutine version of this macro, see fputc.

RETURNS
If successful, putc returns its argument, ch. If an error intervenes, the result is EOF. You can use ferror(fp) to query for errors.

COMPLIANCE
ANSI C requires by putc; it suggests, but does not require, that putc be implemented as a macro. The standard explicitly permits macro implementations of putc to use the fp argument more than once; therefore, in a portable program, you should not use an expression with side effects as this argument.

Supporting OS subroutines required: close, fstat, isatty, lseek, read, sbrk, write.