std::fputc, std::putc

Defined in header <cstdio>
int fputc( int ch, std::FILE* stream );
int putc( int ch, std::FILE* stream );

Writes a character ch to the given output stream stream.

Internally, the character is converted to unsigned char just before being written.

In C, putc() may be implemented as a macro, which is disallowed in C++. Therefore calls to std::fputc() and std::putc() always have the same effect.

Parameters

ch - character to be written
stream - output stream

Return value

On success, returns the written character.

On failure, returns EOF and sets the error indicator (see std::ferror()) on stream.

Example

#include <cstdio>
 
int main()
{
    for (char c = 'a'; c != 'z'; c++)
        std::putc(c, stdout);
    std::putc('\n', stdout);
 
    // putchar return value is not equal to the argument
    int r = 0x1070;
    std::printf("\n0x%x\n", r);
    r = std::putchar(r);
    std::printf("\n0x%x\n", r);
}

Output:

abcdefghijklmnopqrstuvwxy
0x1070
p
0x70

See also

writes a character to stdout
(function)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
http://en.cppreference.com/w/cpp/io/c/fputc