问题标签 [getch]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - getch() 和 clrscr() 的 c++ 替代方案
我使用code::blocks
10.05 来编译 C++。
但我不能使用
它说unknown
。当我#include <conio>
说未知库时。那么能够getch
在 C++ 中使用的替代方案是什么?
c - getch 需要额外的字符
您好,我是编程新手,我正在用 C 编写程序。
在我的头文件中,我有这个宏:
在我的程序中,我有这个代码
所以我想问的是,为什么我要求return的时候yesno(c)
只需要按一次按钮,而我用return的时候yesno(getch())
却要再按一次按钮两三下?
getch()
从宏调用时有问题吗?
c - getch() 在 C 中究竟做了什么?
我认为(到目前为止) getch() 函数从输入缓冲区(或键盘,简单地说)读取字符。但我不得不和我的实验室导师争论。他们说 getch() 的唯一工作是保持程序执行。我知道 getch() 可以这样使用。但我只是想知道这是发明它的真正目的吗?或者,它很少用于获取单字符输入吗?
c - getch() 等待 Enter 键?
我在 Windows 7 上使用 C-Free 4 Standard 并编写了一个 C 程序。
我正在使用 getch() 作为暂停程序的函数,但是,按下的字符会在屏幕上回显,它会在继续之前等待按下 Enter 键(它看起来与scanf 有效)。我尝试了 getche(),它工作正常,尽管出现了回声。
getch() 函数可能有什么问题?
c - 当用户输入“。”时停止`scanf` 点
我在搞乱下面的函数,我想在用户输入点字符时结束输入捕获。似乎getche()
没有做它打算做的事情:
更新
看来我还不够清楚。我想要做的是当用户输入一个点时它应该像按下 ENTER 键一样,所以程序进入下一步。某种模拟 ENTER 键。
c++ - getch() 和 scanf() 函数之间的区别
我在执行以下代码时遇到了困难。完成一次执行后,变量“t”取空值。通过使用 getch() 而不是 scanf() 解决了这个问题。但我不知道为什么会这样。有什么解释吗?这是不起作用的程序。
现在,这是正确执行的程序。
java - Java中通过JNI实现的非阻塞输入
我正在追求使用 Java 设计一个命令外壳。我必须立即实现的一项重要功能是“自动完成”,这在按下“tab”键时由命令外壳提供便利。为此,我认为我必须在非阻塞模式下逐个字符地读取输入命令。
不幸的是,据我了解,Java API 都不支持非阻塞输入。也就是说,用于读取输入的 Java API 会等待(阻塞),直到用户点击“Enter”键,这在我的情况下是非常不可取的。另外,我已经下定决心不使用任何第三方 Java 库(如 JLine )。
所以,我不得不求助于 JNI。本机 .C 文件似乎是这样的 -
以及调用上述本机方法的相应Java方法:
此外,我可以向您保证,在链接本机 .dll 方面没有任何麻烦。而且,截至目前,“InterruptableCharacterArray”仅包含“\t”(“tab”键)。因此,截至目前的 index 值为 1 。
问题:
1> 控件似乎没有阻塞:
也就是说,它似乎不允许用户在该行通过 Java 控制台输入输入,而这是打算这样做的。而且,即使在 getche() 的情况下也是同样的问题(非阻塞但回声)
相反,在每次迭代中,“变量”都会采用一些默认垃圾值,并在执行以下语句时将其打印在控制台上:
但是,当 getch() 被 getc(stdin)、getchar() 等阻塞对应物替换时,我的这段代码就像一个魅力。
我无法弄清楚通过 JNI 调用 getch() 究竟是什么问题。
2> 另外,如果建议任何其他替代解决方案来实现相同的效果,我将不胜感激。
先感谢您 !
编辑:命令外壳将在基于 Windows 和 Unix 的操作系统上实现。
c - 如何使用 kbhit 和 getch(C 编程)
我正在尝试创建一个函数,printf
如果用户按下键盘上的任何按钮(除了大写字母),该函数将显示某个字符串P
,如果用户按下P
,它将打破循环。
但是我不认为我正在使用_kbhit
并且_getch
正确。我使用数字 80,因为那是 80 的 ASCII 符号......抱歉有任何混淆
c - Twitter 喜欢 C 中的“字符左”功能问题:如何防止它进入下一行?
就像我的最后一个问题一样,这与我的学校项目有关。我必须在 C 中做一个“类似推特”的程序,但我遇到了一个小布局问题。请记住,我知道此代码未优化,我首先“玩弄”以使基础工作正常。
这是我遇到问题的功能(不要注意带有所有\b的printf,它只是暂时的并且非常混乱):
这个函数让用户输入一条消息,并显示用户还剩下多少个字符供他输入(DIM_MSG 常量就是这个大小)。基本上,当用户键入时,它会显示在文本右侧写入的字符数(有点像文本框底部的 twitter)。
我遇到的问题是,当您输入较长的内容并到达命令窗口的一侧时,它会“中断”并转到下一行,我最终会在窗口中看到类似这样的内容:
困扰我的是,当您删除文本(退格键或 '\b' )时,它会停在您所在的行。如果您查看示例,您将能够在最后一行删除“ttest”,然后您将被卡住(尽管计数器仍然会下降而不移动)
如果您对如何解决此问题或如何改进此问题有任何想法,欢迎一切!
先感谢您 !
xcode - getch() 返回 \377!而不是阅读字符
我正在使用 Xcode 并使用 C 语言试图了解如何使用 Getch 函数来启动项目。我复制了一些有人编写的代码作为应该可以工作的示例,但是它不是等待我输入字符的代码,而是为我返回一个:
这是输出:
如果我使用 Getchar(),它可以工作,但我不想按 Enter。
我对编码真的很陌生,所以它可能很简单,但我不知道......
LT