getchar

来自cppreference.com
< c‎ | io
 
 
 
定义于头文件 <stdio.h>
int getchar(void);

stdin读取下一个字符。

等价于getc(stdin)

目录

[编辑] 参数

(无)

[编辑] 返回值

成功则为获得的字符,失败则为EOF

若失败由文件尾条件产生,则另外对stdin设置文件尾指示器(见feof())。若失败由某些其他错误产生,则对stdin设置错误指示器(见ferror())。

[编辑] 示例

getchar带错误检查

#include <stdio.h>
#include <stdlib.h>
 
int main(void)
{ 
    int ch;
    while ((ch=getchar()) != EOF)   /* 从stdin读/打印"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

[编辑] 参考

  • C11 standard (ISO/IEC 9899:2011):
  • 7.21.7.6 The getchar function (p: 332)
  • C99 standard (ISO/IEC 9899:1999):
  • 7.19.7.6 The getchar function (p: 298)
  • C89/C90 standard (ISO/IEC 9899:1990):
  • 4.9.7.6 The getchar function

[编辑] 参阅

从文件流获取一个字符
(函数) [编辑]
getcharC++ 文档