getch()、getche()和getchar()函数

getch()、getche()和getchar()函数

(1) getch()和getche()函数
 这两个函数都是从键盘上读入一个字符。其调用格式为:
  getch(); 
  getche();
 两者的区别是:getch()函数不将读入的字符回显在显示屏幕上,而getche() 函数却将读入的字符回显到显示屏幕上。 

     例1:
     #include"stdio.h"
     #include"conio.h"
     void main()
     {
          char c, ch;
          c=getch();     /*从键盘上读入一个字符不回显送给字符变量c*/
          putchar(c);    /*输出该字符*/
          ch=getche();   /*从键盘上带回显的读入一个字符送给字符变量ch*/
          putchar(ch);
     }

 利用回显和不回显的特点, 这两个函数经常用于交互输入的过程中完成暂停等功能。 
     例2: 
     #include"stdio.h"
     #include"conio.h"
     void main() 
     {
          char s[20];
          printf("Name:");
          gets(s);
          printf("Press any key to continue...");
          getch();  /*等待输入任一键*/
     } 
  
(2) getchar()函数
 getchar()函数也是从键盘上读入一个字符, 并带回显。它与前面两个函数的区别在于: getchar()函数等待输入直到按回车才结束,  回车前的所有输入字符都会逐个显示在屏幕上。但只有第一个字符作为函数的返回值。

    例3: 
     #include"stdio.h"
     #include"conio.h"
     void main() 
     {
          char c;
          c=getchar();   /*从键盘读入字符直到回车结束*/
          putchar(c);    /*显示输入的第一个字符*/
          getch();       /*等待按任一健*/
     } 

     例4:
     #include"stdio.h"
     #include"conio.h"
     void main() 
     {
          char c;
          while ((c=getchar())!='/n')   /*每个getchar()依次读入一个字符*/
          printf("%c",c);    /*按照原样输出*/
          getch();       /*等待按任一健*/ 
     }


 编程中,以防程序运行一闪即失,总是要在最后来一个“getch();”
 getch()和getche()需要"conio.h"

附:
getch    从键盘无回显地读一字符
调用格式      #include"stdio.h"
         int getch(void);
原型在   conio.h
说明     getch从键盘直接读一个字符,不回显到屏幕上。
返回值   getch返回从键盘所读的字符。
可移植性 getch只适用于DOS

getchar  从stdin流中取字符
调用格式    #include"conio.h"
         int getchar(void);
原型在   stdio.h
说明     getchar是一个宏,用于返回指定的stdin输入流的下一个字符,   它定义为getc(stdin)。
返回值   调用成功时,getchar返回所读的字符,它已被转换为无符号扩展的整形值。在遇到文件结束或出错时,返回EOF。
可移植性 getchar适用于UNIX系统,在ANSI C中定义,与Kernighan和Ritchie的定义兼容 

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值