getchar()用来读取缓存区下一个未被读取的字符
#include <stdio.h>
int main(){
char a;
char b;
char c;
printf("请输入:");
scanf("%c", &a);
printf("a = %c\n", a);
b = getchar();
c = getchar();
printf("b = %c\n", b);
printf("c = %c\n", c);
printf("%c", getchar());
printf("程序结束\n");
return 0;
}
输出结果:
从结果可以看出,每调用一次getchar(),将读取下一个缓存区的字符:
第一次,1被scanf读取并赋值给了a;
第二次,2被getchar读取并赋值给了b;
第三次,3被getchar读取并赋值给了c;
第四次,回车字符被getchar读取并直接打印输出,显示为换行。