C 参考手册
- C 语言
 - C 关键词
 - 预处理器
 - C 标准库头文件
 - 类型支持
 - 程序支持工具
 - 变参数函数
 - 错误处理
 - 动态内存管理
 - 日期和时间工具
 - 字符串库
 - 算法
 - 数值
 - 文件输入/输出
 - gets, gets_s
 - printf, fprintf, sprintf, snprintf, printf_s, fprintf_s, sprintf_s, snprintf_s
 - fopen, fopen_s
 - fputc, putc
 - fputs
 - getchar
 - putchar
 - FILE
 - fpos_t
 - stdin, stdout, stderr
 - freopen, freopen_s
 - fwide
 - setbuf
 - setvbuf
 - fclose
 - fflush
 - fread
 - fwrite
 - fgetc, getc
 - fgets
 - puts
 - ungetc
 - fgetwc
 - fgetws
 - fputwc, putwc
 - fputws
 - getwchar
 - putwchar
 - ungetwc
 - scanf, fscanf, sscanf, scanf_s, fscanf_s, sscanf_s
 - wscanf, fwscanf, swscanf, wscanf_s, fwscanf_s, swscanf_s
 - vscanf, vfscanf, vsscanf, vscanf_s, vfscanf_s, vsscanf_s
 - vwscanf, vfwscanf, vswscanf, vwscanf_s, vfwscanf_s, vswscanf_s
 - wprintf, fwprintf, swprintf, wprintf_s, fwprintf_s, swprintf_s, snwprintf_s
 - vprintf, vfprintf, vsprintf, vsnprintf, vprintf_s, vfprintf_s, vsprintf_s, vsnprintf_s
 - vwprintf, vfwprintf, vswprintf, vwprintf_s, vfwprintf_s, vswprintf_s, vsnwprintf_s
 - ftell
 - fgetpos
 - fseek
 - fsetpos
 - rewind
 - clearerr
 - feof
 - ferror
 - perror
 - remove
 - rename
 - tmpfile, tmpfile_s
 - tmpnam, tmpnam_s
 - 本地化支持
 - 原子操作库
 - 线程支持库
 - 实验性 C 标准库
 - 有用的资源
 - 符号索引
 - 注释
 
fputc, putc
|   定义于头文件  <stdio.h>
  | 
||
|   int fputc( int ch, FILE *stream );  | 
||
|   int putc( int ch, FILE *stream );  | 
||
写入字符 ch 到给定输出流 stream 。 putc() 可以实现为宏并对 stream 求值超过一次,故对应的参数决不应是有副效应的表达式。
在内部,在写入前将字符转换为 unsigned char 。
参数
| ch | - | 要被写入的字符 | 
| stream | - | 输出流 | 
参数
| ch | - | 要写入的字符 | 
| stream | - | 输出流 | 
返回值
成功时,返回被写入字符。
失败时,返回 EOF 并设置 stream 上的错误指示器(见 ferror() )。
示例
putc带错误检查
运行此代码
#include <stdio.h> #include <stdlib.h> int main(void) { int ret_code = 0; for (char c = 'a'; (ret_code != EOF) && (c != 'z'); c++) ret_code = putc(c, stdout); /* 测试是否抵达 EOF 。 */ if (ret_code == EOF) if (ferror(stdout)) { perror("putc()"); fprintf(stderr,"putc() failed in file %s at line # %d\n", __FILE__,__LINE__-7); exit(EXIT_FAILURE); } putc('\n', stdout); return EXIT_SUCCESS; }
输出:
abcdefghijklmnopqrstuvwxy
引用
- C11 standard (ISO/IEC 9899:2011):
 
- 7.21.7.3 The fputc function (p: 331)
 
- 7.21.7.7 The putc function (p: 333)
 
- C99 standard (ISO/IEC 9899:1999):
 
- 7.19.7.3 The fputc function (p: 297)
 
- 7.19.7.8 The putc function (p: 299)
 
- C89/C90 standard (ISO/IEC 9899:1990):
 
- 4.9.7.3 The fputc function
 
- 4.9.7.8 The putc function
 
参阅
   将一个字符写入 stdout (函数)  |