getchar
来自 cppreference.com
定义在头文件 <stdio.h> 中 |
||
int getchar( void ); |
||
从 stdin 读取下一个字符。
内容 |
[编辑] 参数
(无)
[编辑] 返回值
成功时获得的字符,或失败时为 EOF。
如果失败是由文件结尾条件引起的,则还会在 stdin 上设置 eof 指示器(见 feof())。如果失败是由其他错误引起的,则会设置 stdin 上的 error 指示器(见 ferror())。
[编辑] 示例
演示 getchar
的错误检查
运行此代码
#include <stdio.h> #include <stdlib.h> int main(void) { for (int ch; (ch = getchar()) != EOF;) // read/print "abcde" from stdin printf("%c", ch); // Test reason for reaching EOF. if (feof(stdin)) // if failure caused by end-of-file condition puts("End of file reached"); else if (ferror(stdin)) // if failure caused by some other error { 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 函数 (p: 298)
- C89/C90 标准 (ISO/IEC 9899:1990)
- 4.9.7.6 getchar 函数
[编辑] 参见
从文件流中获取一个字符 (函数) | |
C++ 文档 为 getchar
|