【发布时间】:2022-01-01 09:50:54
【问题描述】:
我正在编写无需用户按 ENTER 即可获得输入的代码。 该代码基本上是我需要从 1-6 中获取 4 个数字,而无需用户在一行中全部按 ENTER。
我尝试使用getchar() 这样做,但它不起作用。
我该怎么做?
这是那部分代码:
int p1 = 0;
int p2 = 0;
int p3 = 0;
int p4 = 0;
p1 = getchar() - 48;
p2 = getchar() - 48;
p3 = getchar() - 48;
p4 = getchar() - 48;
【问题讨论】:
-
对此没有标准功能。您将不得不使用特定于操作系统的东西。请注意,original designers of C 使用了一个单独的终端,在您按下 Enter 之前不会向计算机发送任何内容。
-
将它们全部输入一行,不带空格,然后按一次
。例如 1234<Enter>。另外:请将“幻数”48替换为'0'。 -
在 MSVC 中,您可以使用
_getch()或_getche()。 -
如何将输入作为字符串行,拆分并转换为整数?
标签: c