getch();的功能?

#include<stdio.h>#include<conio.h>#include<stdlib.h>intmain(void){charch;getch();if(g... #include<stdio.h>
#include<conio.h>
#include<stdlib.h>
int main(void)
{
char ch;
getch();
if(getch()=='1')
printf("hello,world\n");
system("pause");
return 0;
}
为什么当我输入的是字符1时,不会输出hello,world呢?
展开
 我来答
哆啦聊教育
高粉答主

2021-10-19 · 说的都是干货,快来关注
知道小有建树答主
回答量:4803
采纳率:100%
帮助的人:80.9万
展开全部

从控制台读取一个字符,但不显示在屏幕上。

getch()是编程中所用的函数,这个函数是一个不回显函数,当用户按下某个字符时,函数自动读取,无需按回车,有的C语言命令行程序会用到此函数做游戏,但是这个函数并非标准函数,要注意移植性!

易错点

MAC OS中ENTER键将产生 \r ,因此getch返回13(\r)。

getch();并非标准C中的函数,不存在C语言中。所以在使用的时候要注意程序的可移植性。国内C语言新手常常使用getch();来暂停程序且不知道此函数来源,建议使用getchar()或者使用头文件中的system("PAUSE")调用系统命令暂停;(如果情况允许)代替此功能或更换一款编译器。

名片
2024-10-28 广告
作为优菁科技(上海)有限公司的一员,Altair HyperWorks是我们重点代理的CAE软件套件。该软件以其全面的仿真能力、丰富的建模工具和高效的优化设计功能著称,广泛应用于汽车、航空航天、能源及电子等行业。HyperWorks通过集成... 点击进入详情页
本回答由名片提供
打怪的老怪
2011-01-10 · 超过15用户采纳过TA的回答
知道答主
回答量:104
采纳率:0%
帮助的人:55万
展开全部
你用了两次getch()方法,要不去掉一个,要不输两次,我想你的原意应该是去掉一个以后的程序。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
10年饮冰
推荐于2016-05-21 · TA获得超过141个赞
知道答主
回答量:41
采纳率:0%
帮助的人:26.7万
展开全部
getch()函数从控制台无回显地取一个字符
你的程序中有两个getch()函数,第一次输入的字符丢掉,第二次输入的字符与'1'比较,相等输出hello world
也就说得输入两次才行啊
在devc++下调试的
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2011-01-08
展开全部
我刚才试了试,把getch();去了就可以了!但是不知道是否符合题意……
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
IT老男人
推荐于2017-09-17 · 分享IT技术文章,分享工作中的最佳实践。
IT老男人
采纳数:1738 获赞数:4689

向TA提问 私信TA
展开全部
这个函数是一个不回显函数,当用户按下某个字符时,函数自动读取,无需按回车,有的C语言命令行程序会用到此函数做游戏,但是这个函数并非标准函数,要注意移植性!
getch():
所在头文件:conio.h
函数用途:从控制台读取一个字符,但不显示在屏幕上
函数原型:int getch(void)
返回值:读取的字符
例如:
char ch;或int ch;
_getch();或ch=_getch();
用_getch();会等待你按下任意键,再继续执行下面的语句;
用ch=_getch();会等待你按下任意键之后,把该键字符所对应的ASCII码赋给ch,再执行下面的语句。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式