Difference between revisions of "cpp/io/c/fputc"
From cppreference.com
m (Update links.) |
|||
Line 7: | Line 7: | ||
Writes a character {{tt|ch}} to the given output stream {{tt|stream}}. {{c|putc()}} function may be implemented as a macro. | Writes a character {{tt|ch}} to the given output stream {{tt|stream}}. {{c|putc()}} function may be implemented as a macro. | ||
+ | |||
+ | Internally, the character is converted to {{c|unsigned char}} just before being written. | ||
===Parameters=== | ===Parameters=== | ||
{{par begin}} | {{par begin}} | ||
{{par | ch | character to be written}} | {{par | ch | character to be written}} | ||
− | |||
{{par end}} | {{par end}} | ||
===Return value=== | ===Return value=== | ||
− | {{ | + | On success, returns the written character. |
+ | |||
+ | On failure, returns {{lc|EOF}} and sets the ''error'' indicator (see {{lc|ferror()}}) on {{lc|stdout}}. | ||
+ | |||
+ | ===Example=== | ||
+ | {{example | ||
+ | |code= | ||
+ | #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, stdout); | ||
+ | std::printf("\n0x%x\n", r); | ||
+ | } | ||
+ | |output= | ||
+ | abcdefghijklmnopqrstuvwxy | ||
+ | 0x1070 | ||
+ | p | ||
+ | 0x70 | ||
+ | }} | ||
===See also=== | ===See also=== |
Revision as of 06:57, 16 October 2013
Defined in header <cstdio>
|
||
int fputc( int ch, FILE *stream ); int putc( int ch, FILE *stream ); |
||
Writes a character ch
to the given output stream stream
. putc() function may be implemented as a macro.
Internally, the character is converted to unsigned char just before being written.
Contents |
Parameters
ch | - | character to be written |
Return value
On success, returns the written character.
On failure, returns EOF and sets the error indicator (see ferror()) on stdout.
Example
Run this code
#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, stdout); std::printf("\n0x%x\n", r); }
Output:
abcdefghijklmnopqrstuvwxy 0x1070 p 0x70
See also
writes a character to stdout (function) | |
C documentation for fputc, putc
|