无需新线的用户输入

User input without newline?

本文关键字:用户 输入 新线      更新时间:2023-10-16

基本上我需要整数的用户输入,我尝试了这些方法:

#include <iostream>
int main() {
 int PID;
 scanf("%i",&PID); //attempt 0
 cin >> PID; //attempt 1
}

有什么想法?

大多数命令行输入方法都要求用户按 enter 向输入的结尾发出信号,即使应用程序不使用dembore line brews。<<<<<<<<<<<<<<<<<<<<

如果您不希望用户使用 Enter 结束输入,那么您可能必须一次读取输入1字符并手动处理数据转换。问题是,如果没有线路休息,您怎么知道用户何时键入输入?当用户输入x字符/数字数时?如果用户键入的最大输入少?启动一个计时器并在用户停止键入X秒时停止阅读?看到问题?

线路断裂不是要忽略的。您应该重新设计输入逻辑以接受它们,而不是避免它们。如果确实不是一个选项,那么也许您需要重新考虑为什么首先创建命令行应用程序而不是GUI应用程序,用户可以在准备好时按下按钮。