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

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

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();    /*等待输入任一键*/ 
       } 

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的定义兼容
                
                

posted @ 2015-10-20 20:06  近水樓台  阅读(380)  评论(0编辑  收藏  举报
Fork me on GitHub
回到顶部