头文件:#include<stdio.h> #include<conio.h>
函数getche()用于读取从控制台输入的字符,并将输入的字符立即 显示在控制台,其原型如下。
int getche(void);
【参数】该函数没有参数。
【返回值】该函数从控制台读取字符,并在控制台显示读取的字符ASCII码值。
【实例】下面的示例演示了getche()函数的使用,从控制台读取并回显字符,代码如下。
#include <stdio.h> // 加入标准输入输出库
#include <conio.h> // 加入控制台输入输出库
void main(){
char ch;
printf("Input a characters: "); // 输出提示信息
ch = getche(); // 读取字符
printf("\nYou input a '%c'\n", ch); // 输出字符
}
运行上述程序,首先声明用于暂存从控制台所读取字符的变量 ch,输出提示信息;然后读取并显示从控制台所输入的字符到变量ch 中,最后再将其输出到控制台。
又如,等待用户输出两个字符,然后退出程序。
#include<stdio.h>
void main()
{
char ch = getche(); /*读取字符*/
char ch2 = getche(); /*读取字符*/
printf("You put char is %c\n",ch);
printf("You put char is %c\n",ch2);
system("pause");
return;
}
如果用户输入as,则输出结果为:
例子运行后输入字符as就会出现这个结果。由于 getche()为阻塞形式运行,所以在用户没有输入第二个字符的时候会继续等待,直到输入第二个才继续往后面运行,再次输出用户 输入的字符。与getch()和getchar()对比发现,getche()带回显但是不需要按回车键,基本介于getch()与getchar()函数功能之间,类似于功能进化过渡形式。