getchar
From cppreference.net
File input/output
| Types and objects | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
定义于头文件
<stdio.h>
|
||
|
int
getchar
(
void
)
;
|
||
从 stdin 读取下一个字符。
目录 |
参数
(无)
返回值
成功时获取的字符或失败时返回 EOF 。
若失败由文件结束条件引起,则额外设置 eof 指示符(参见 feof() )于 stdin 。若失败由其他错误引起,则设置 error 指示符(参见 ferror() )于 stdin 。
示例
演示带错误检查的
getchar
用法
运行此代码
#include <stdio.h> #include <stdlib.h> int main(void) { for (int ch; (ch = getchar()) != EOF;) // 从标准输入读取/打印 "abcde" printf("%c", ch); // 检查达到EOF的原因 if (feof(stdin)) // 如果因文件结束条件导致失败 puts("End of file reached"); else if (ferror(stdin)) // 如果因其他错误导致失败 { perror("getchar()"); fprintf(stderr, "getchar() failed in file %s at line # %d\n", __FILE__, __LINE__ - 9); exit(EXIT_FAILURE); } return EXIT_SUCCESS; }
可能的输出:
abcde End of file reached
参考文献
- C23 标准 (ISO/IEC 9899:2024):
-
- 7.21.7.6 getchar 函数 (p: TBD)
- C17 标准 (ISO/IEC 9899:2018):
-
- 7.21.7.6 getchar 函数 (p: TBD)
- C11 标准 (ISO/IEC 9899:2011):
-
- 7.21.7.6 getchar 函数 (p: 332)
- C99标准(ISO/IEC 9899:1999):
-
- 7.19.7.6 getchar函数(页码:298)
- C89/C90 标准 (ISO/IEC 9899:1990):
-
- 4.9.7.6 getchar 函数
参见
|
从文件流获取一个字符
(函数) |
|
|
C++ 文档
for
getchar
|
|