是否有输入类型在输入一定数量的字符后自动结束
Is there an input type that automatically ends after a certain number of characters has been entered?
我目前正在为我的数据结构类创建一个基于控制台/文本的Alchemy版本,并且有兴趣在每个"回合"阶段限制输入,但我找不到有关输入限制的任何信息。
我的想法很简单(理论上(,出现输入提示:
Input symbol coords--
X:_ Y:
我想做的是限制要输入的字符数,这意味着输入"5"后,输出将更改为:
Input symbol coords--
X:5 Y:_
(_
指示光标的位置(
重点是无需用户按回车键("输入"(即可发生这种情况。我的主要绊脚石是,一旦调用了cin.get((或cin语句,它就会在读取任何其他代码之前完成(自然(。
char x;
char y;
cout << "X: ";
cin.get(x); //conditions to halt after receiving 1 char input
cout << "X: " << x << " Y: ";
cin.get(y); //conditions to halt after receiving 1 char input
cout << "X: " << x << " Y: " << y << endl;
问:此功能在 C++ 控制台应用程序中是否可行?
如果是这样,将如何实施?
我不
认为这是对我原始问题的直接回答,但它按我的预期工作。关键部分:库 "conio.h" 和函数 getch((,它返回按下的键的整数值。
#include <conio.h>
...
char x;
char y;
cout << "X: ";
x = getch();
cout << x << " Y: ";
y = getch();
cout << y << endl;
char t; //keeping the console open
cin >> t; //keeping the console open
在此之后,两个 char 变量都保存正确的值。
终端
有一个"原始模式"
在原始状态下,终端设备驱动程序在 无需组装数据行的时间。
在这里,您可以找到更多信息:http://www.lafn.org/~dave/linux/terminalIO.html
这是一个关于stackoverflow的类似问题,答案如下:使终端输入在一定数量的字符后发送
相关文章:
- 无法在 C++ 中输入字符数组
- 当我输入字符类型的数字时,为什么我无法获得整数?
- 在不使用字符串库的情况下输入字符*
- 为什么当我输入字符时,这个特定的 cin.get() 语句在C++中不起作用?
- C++中输入字符数组的特定验证
- 如果用户在 int 中输入字符,如何使用输入
- 当我们在以下程序(C )中输入字符时,该如何解决
- 如何在结构中输入字符到向量
- 用户输入逻辑运算符符号或数字,如果输入字符或字符串则无效
- 输入字符时忽略回车键
- 在 switch 语句中输入字符以进行C++时用户输入错误
- 使用Back_inserter从任何位置的输入字符中使用Back_inserter进行过滤数组字符串
- 如何在应该显示的printf之前输入字符
- C++ 输入字符而不是 int 会导致无限循环.如何检查错误的输入
- 为什么"keep_window_open()"不等待输入字符?
- 为什么我的程序在输入字符时有一个无限循环
- 当提示输入整数值时输入字符时,为什么程序会中断
- 关闭回显后如何再次回显输入字符
- 忽略输入字符
- 从文件的单行读取输入字符