The Open Group Base Specifications Issue 7
IEEE Std 1003.1, 2013 Edition
Copyright © 2001-2013 The IEEE and The Open Group

#### NAME

> putc - put a byte on a stream

#### SYNOPSIS

> ``#include <stdio.h>
> int putc(int` c`, FILE *`stream`);
> ``

#### DESCRIPTION

> [CX] The functionality described on this reference page is aligned with the ISO C standard. Any conflict between the requirements described here and the ISO C standard is unintentional. This volume of POSIX.1-2008 defers to the ISO C standard.

> The putc() function shall be equivalent to fputc(), except that if it is implemented as a macro it may evaluate stream more than once, so the argument should never be an expression with side-effects.

#### RETURN VALUE

> Refer to fputc.

#### ERRORS

> Refer to fputc.

The following sections are informative.

#### EXAMPLES

> None.

#### APPLICATION USAGE

> Since it may be implemented as a macro, putc() may treat a stream argument with side-effects incorrectly. In particular, putc(c,*f++) does not necessarily work correctly. Therefore, use of this function is not recommended in such situations; fputc() should be used instead.

#### RATIONALE

> None.

#### FUTURE DIRECTIONS

> None.

#### SEE ALSO

> Standard I/O Streams, fputc

> XBD <stdio.h>

#### CHANGE HISTORY

> First released in Issue 1. Derived from Issue 1 of the SVID.

#### Issue 7

> POSIX.1-2008, Technical Corrigendum 1, XSH/TC1-2008/0470 [14] is applied.

End of informative text.

return to top of page

UNIX ® is a registered Trademark of The Open Group.
POSIX ® is a registered Trademark of The IEEE.
Copyright © 2001-2013 The IEEE and The Open Group, All Rights Reserved
[ Main Index | XBD | XSH | XCU | XRAT ]