名称
fputc, fputs, putc, putchar, puts - 字符和字符串的输出
概要
#include <stdio.h>
int fputc(int c, FILE *stream);
int fputs(const char *s, FILE *stream);
int putc(int c, FILE *stream);
int putchar(int c);
int puts(const char *s);
说明
fputc将字符c强制转换为unsigned char类型并写入stream。
fputs将字符串s写入stream,不包括字符串结束符(‘\0’)。
putc等价于fputc,除了一点,就是它可能被实现为宏定义而多次操作流。
putchar(c)等价于putc(c, stdout)。
puts将字符串s和一个换行符写入stdout。
这里描述的函数的调用可以相互混合,也可以与标准I/O库中的其他输出函数的
调用混合。
关于非阻塞的实现,参考unlocked_stdio。
返回值
fputc,putc,putchar返回unsigned char转为int类型之后的值,或者出错时返回
EOF。
puts和fputs成功时返回一个非负数,失败时返回EOF。
线程安全特征
接口 | 特征 | 值 |
fputc(), fputs(), putc(),putchar(), puts() | 线程安全 | 多线程安全 |
标准
遵循POSIX.1-2001, POSIX.1-2008, C89, C99。
BUGS
上述函数和底层的write函数混合调用是不明智的,结果是未定义的而且往往是
非预期的。
推荐阅读
write,ferror,fgets,fopen,fputwc,fputws,fseek,fwrite,putwchar,scanf,
unlocked_stdio
版本记录
这个页面是Linux man-pages项目4.04版本的一部分。关于该项目的信息和bug报
道可以在该网站找到:http://www.kernel.org/doc/man-pages/。
2015-08-08