美文网首页
【C语言学习】getchar()、getche()、getch(

【C语言学习】getchar()、getche()、getch(

作者: 学以解忧 | 来源:发表于2019-08-29 15:04 被阅读0次

    1、getchar()函数

    所在头文件:stdio.h

    函数原型:int getchar(void);

    函数功能:读取控制台输入的字符,并保存在键盘缓冲区中。直到用户按回车为止(回车字符也放在缓冲区中)。

    看一段代码:

    #include <stdio.h>
    
    int main(void)
    {
       printf("%c\n", getchar());
    
       return 0;
    }
    

    当输入一个字符并按回车时,该字符被存入缓冲区中,printf函数再把缓冲区中的该字符输出。如输入输出实例:

    d
    d
    

    2、getche()函数

    所在头文件:conio.h

    函数原型:int getche(void);

    函数用途:输入后立即从控制台取字符,不以回车为结束,且立刻显示在屏幕上(带回显)。

    看一段代码:

    #include <stdio.h>
    #include <conio.h>
    int main(void)
    {
       printf("%c\n", getche());
    
       return 0;
    }
    

    该函数的输入输出示例:

    dd
    

    也就是说,输入d,直接就输出d,不需要按回车键,即该函数不带缓冲区,且输入有回显。回显的意思就是在控制台显示输入的字符。

    3、getch()函数

    所在头文件:conio.h

    函数原型:int getch(void);

    函数用途:从控制台读取一个字符,但不显示在屏幕上(不带回显)。

    看一段代码:

    #include <stdio.h>
    #include <conio.h>
    int main(void)
    {
       printf("%c\n", getch());
    
       return 0;
    }
    

    输入输出实例:

    d
    

    输入d,不会显示d,当调用printf函数后才输出d。控制台读取一个字符,但不显示在屏幕上(不带回显)。

    此外,还需要注意的一个问题是:conio.h这个头文件是 windows 平台下特有的,其他平台如 Linux、Mac OS 等平台是没有的,所以使用getch()函数与getche()函数应该注意平台的问题。

    以上就是关于getchar()、getche()、getch()的总结,如有错误欢迎指出!


    关注我的公号【嵌入式大杂烩】,回复:C语言,可获取C语言资料。
    关注我的个人博客:【我的博客】查看更多笔记

    相关文章

      网友评论

          本文标题:【C语言学习】getchar()、getche()、getch(

          本文链接:https://www.haomeiwen.com/subject/oqpiectx.html