C++ getchar()、getch()、getche()、putchar()、putch() 详解


getchar()

所在头文件 c s t d i o   ∣   s t d i o . h cstdio \space | \space stdio.h cstdio  stdio.h

函数原型 i n t int int _ _ c d e c l \_\_cdecl __cdecl g e t c h a r ( v o i d ) ; getchar(void); getchar(void);

(注: _ _ c d e c l \_\_cdecl __cdecl 是 C/C++ 默认使用的调用约定)

函数作用:读取用户从键盘输入的单个字符(返回值为 int 型),当发生读入错误时返回 − 1 -1 1。否则返回用户从键盘输入的第一个字符的 A S C I I ASCII ASCII 码。

注意点 g e t c h a r ( ) getchar() getchar() 是等到换行才开始从 I/O 流 \color{#CC66FF} \text{I/O 流} I/O  中读入字符,如果还有字符,将其一并放入键盘缓冲区。(包括换行符)如果键盘缓冲区还有字符, g e t c h a r ( ) getchar() getchar() 并不会等待字符的输入,而是先把键盘缓冲区的字符读完,再等待输入。数字也算作字符。 g e t c h a r ( ) getchar() getchar() 输入的字符是显示在屏幕上的!

getch()

所在头文件 c o n i o . h conio.h conio.h

函数原型 i n t int int _ _ c d e c l \_\_cdecl __cdecl g e t c h ( v o i d ) getch(void) getch(void) _ _ M I N G W _ A T T R I B _ D E P R E C A T E D _ M S V C 2005 ; \_\_MINGW\_ATTRIB\_DEPRECATED\_MSVC2005; __MINGW_ATTRIB_DEPRECATED_MSVC2005;

函数作用 g e t c h ( ) getch() getch() 等待 控制台 按下任意键后将 A S C I I ASCII ASCII 值传回。如果单纯使用 g e t c h ( ) getch() getch()(如下),则作用是等待按下任意键。

注意点 g e t c h ( ) getch() getch() 输入的字符是不显示在屏幕上的!(没有回显)

#include <conio.h>
using namespace std;
int main()
{
    getch();
    return 0;
}

getche()

所在头文件 c o n i o . h conio.h conio.h

函数原型 i n t int int _ _ c d e c l \_\_cdecl __cdecl g e t c h e ( v o i d ) getche(void) getche(void) _ _ M I N G W _ A T T R I B _ D E P R E C A T E D _ M S V C 2005 ; \_\_MINGW\_ATTRIB\_DEPRECATED\_MSVC2005; __MINGW_ATTRIB_DEPRECATED_MSVC2005;

函数作用:同 g e t c h ( ) getch() getch(),只不过有回显。(回显是指显示在屏幕上)

putchar()

所在头文件 c s t d i o   ∣   s t d i o . h cstdio \space | \space stdio.h cstdio  stdio.h

函数原型 i n t int int _ _ c d e c l \_\_cdecl __cdecl p u t c h a r ( i n t _ C h ) ; putchar(int \_Ch); putchar(int_Ch);

函数作用:向终端输出一个字符。

putch()

所在头文件 c o n i o . h conio.h conio.h

函数原型 i n t int int _ _ c d e c l \_\_cdecl __cdecl p u t c h ( i n t _ C h ) putch(int \_Ch) putch(int_Ch) _ _ M I N G W _ A T T R I B _ D E P R E C A T E D _ M S V C 2005 ; \_\_MINGW\_ATTRIB\_DEPRECATED\_MSVC2005; __MINGW_ATTRIB_DEPRECATED_MSVC2005;

函数作用:在当前光标处输出一个字符,然后光标自动右移一个位置。

注意事项

g e t c h ( ) getch() getch() p u t c h ( ) putch() putch() 不是标准库函数

小结

g e t c h a r ( )   g e t c h ( )  和  g e t c h e ( ) getchar() \space getch() \space 和 \space getche() getchar() getch()  getche() 的作用都是读取字符,但 g e t c h a r ( )  和  g e t c h e ( ) getchar() \space 和 \space getche() getchar()  getche() 有回显,而 g e t c h ( ) getch() getch() 无回显。 g e t c h a r ( ) getchar() getchar() 等到换行才开始读取,多余字符会放入键盘缓冲区(包括换行符),读取是会优先读入缓冲区字符。而 g e t c h ( )  和  g e t c h e ( ) getch() \space和 \space getche() getch()  getche() 则直接读入字符。

p u t c h a r ( )  和  p u t c h ( ) putchar() \space 和 \space putch() putchar()  putch() 的作用都是输出字符,不推荐使用 p u t c h a r ( ) putchar() putchar()
g e t c h ( )  和  p u t c h ( ) getch() \space 和 \space putch() getch()  putch() 都不是标准库函数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值