引言
C语言中getchar和putchar函数详解,理解多组数据输入的问题中的EOF(-1)。
1.getchar()
函数原型:
int getchar ( void );
getchar() 函数返回用户从键盘输入的一个字符,使用时不带有任何参数。 程序运行到这个命令就会暂停,等待用户从键盘输入。
使用时需要包含头文件<stdio.h>
getchar() 不会忽略起首的空白字符,总是返回当前读取的第一个字符,无论是否为空格。如果读取失败,返回常量 EOF, 由于 EOF 通常是-1 ,所以返回值的类型要设为 int, 而不是char。
如何让 getchar() 函数读取失败,返回-1呢?其实需要在输⼊字符之前,直接按 Ctrl+z 就可以。 这也是为什么在多组数据输入的问题中判断条件是getchar != EOF(-1);
#include<stdio.h>
int main()
{
int ch;
ch = getchar();
printf("%c", ch);
return 0;
}
getchar() 通常和 putchar() 是⼀对儿,配合使用的。
2.putchar()
函数原型:
int putchar (int character);
putchar() 函数将它的参数字符输出到屏幕,它的原型定义在头文件<stdio.h>
#include<stdio.h>
int main()
{
int ch;
ch = getchar();
putchar(ch);
return 0;
}
操作成功时, putchar() 返回输出的字符,否则返回常量 EOF(-1) 。