我正在开发一个实验项目,用于在控制台中打印消息框和窗口等内容。 (在ascii中)
终端通常不允许程序员对输入处理进行很好的控制。
例如,我有一个在ascii中绘制消息框等的循环,然后执行以下操作以获取输入:
string input;
cin >> input;
ui.ProcessInput(input); // ui is a class which stores messageboxes/optionboxes to be printed to screen in ascii
这适用于“optionboxes”(我自己的命名约定)等对象,要求用户输入“1”“2”或“3”来回答问题。
然而,对于一个简单的“messagebox”命中返回不起作用(在Linux上),因为如果控制台看到行尾char而没有任何其他字符,则忽略该行。
因此,必须输入一些用于调用ui.ProcessInput()
的无意义文本。
有什么办法可以用跨平台的C ++标准方式从终端/控制台窗口获取字符/键盘代码,然后我可以手动处理它?</ p>