getchar函数从标准输入读取一个字符并返回它的值,如果输入中不再存在任何字符,函数就会返回常量EOF(在stdio中定义)用于提示文件的结尾。
getchar(),getchar()和gets()用法及缓冲区溢出:
getchar有一个int型的返回值,当程序调用getchar时,程序就等着用户按键,用户输入的字符被存放在键盘缓冲区内,直到用户按回车为止(回车字符也放在缓冲区)当用户键入回车之后,getchar才开始,从stdio流中每次读入一个字符。
getchar()函数也是从键盘上读入一个字符,并带回显,它与getch和getchare函数的区别在于:getchar()函数等待输入知道按回车才能结束,第一个字符的AISN作为函数的返回值。
getchar()和getche()函数
这两个函数都是从键盘上读入一个字符,其调用格式为:
getch();
getche();
两者的区别:getch()函数不将读入的字符回显在显示屏幕上,而getche()函数却将读入的字符回显到屏幕上。
利用回显和不回显的特点,这两个函数经常用于交互输入的过程中完成暂停等功能。
#include
#include
void main()
{
char c;
c=getchar();
putchar(c);
getch();
}
#include
#include
void main()
{
char c;
while((c=getchar())!=‘\n’)
printf("%c",c);
getch();
}
编程中,以防程序运行一闪即逝,总是要在最后来一个“getch()”。
#include
main()
{
char a ,b,c,d;
scanf("%c %c",&a,&b);
c=getchar();
d=getchar();
printf("%c %c %c\n",a,b,c,d);
}
当执行程序时,按下列方式输入数据(从第一列开始,代表回车,注意:回车也是一个字符)
12
34
则输出结果是 12
3
解析:getchar函数用于输入字符,其调用形式为:ch=getchar(),getchar后的一对圆括号内没有参数,但这一对圆括号不可少,getchar()函数从终端读入一个字符作为函数值,以上调用形式把读入的一个字符付给变量ch。在输入时,空格、回车符都讲作为字符读入,而且只有在用户敲入Enter键时,读入才开始执行。
gets()和puts()用于字符串的输入和输出,包括空格。