Getch只是拒绝为我工作

时间:2017-04-09 04:42:16

标签: c

我是C的新手,因此我希望获得更多图书馆功能的经验。当我开始摆弄getch()时,我无法让我的生活得到它的发挥。所有发生的事情都是人物回到了控制台,我可以输入多个,甚至按下输入而不会在整个程序中继续。这是我制作的一个小测试代码。知道我哪里错了吗?

#include <stdlib.h>
#include <stdio.h>
#include <conio.h>



int main(){
   char i = '9';
   i = getch();
   printf("%c", i);

}
编辑:谢谢大家的答案,尽管我可以更清楚自己想要什么。我希望getch()几乎像fgets()一样使用,除了我不希望它回显,我希望控制台接受立即输入的字符而不按任何输入键。 getch是错误的工具吗?

2 个答案:

答案 0 :(得分:1)

更改此

i = getch();

i = getchar();

getchar()是一个标准函数,它从stdin中获取一个字符。

getch()是非标准的。它从键盘获取一个字符(可能与stdin不同)并且不会回显它。

答案 1 :(得分:1)

getch()是一个函数,用于结束或关闭带有conio头文件的windows中使用的主函数。 没有使用stdlib头函数它在使用字符串时使用 作为一个功能。 %c用于打印字符。 如果你想打印我而不是像下面提到的那样: -

#include <stdio.h>
#include <conio.h>
void main()
{
int i = 9;
printf("%d", i);
getch();
}