限制用户输入的字符数
Limiting the number of characters of user input
我试图限制用户可以输入的字符数。
不像用户输入abcde,我限制输入长度为3,
只有abc被考虑。
是否有一种方法可以在上限制用户输入超过一定数量的字符?
例如,如果用户尝试键入12345,如果我将其限制为3个字符,则只键入123。
我试过下面的代码:
cin.width (5),
Cin>> n;
但是我已经意识到它并没有物理上限制用户输入,而只是限制了输入的缓冲区大小。
有办法这样做吗?
+)我正在制作控制台应用程序
你可以做一些奇怪的事情,比如一次读取一个字符,如果他们在第四个字符之前没有按回车键,就说输入无效,然后让他们重新开始,但是在他们尝试提交后,直接把长输入称为无效会更简洁、更容易。
你不能在一个标准的控制台窗口中做到这一点,但是如果你使用c++来创建你自己的窗口和你自己的输入框,那么你就有更多的灵活性。
您可能正在搜索这个:——
#include <iostream>
#include <string>
using namespace std;
int main()
{
string MyInput;
std::cout << "INPUT HERE: ";
std::getline(cin,MyInput);
if (MyInput.length() == 3)
{
std::cout << "OKAY IT IS THREE CHARS" << std::endl;
}
else if (!(MyInput.length() == 3))
{
MyInput.erase(MyInput.begin()+3,MyInput.end());
std::cout << "Look: " << MyInput << std::endl;
}
}
相关文章:
- 如何忽略第一个字符输入后的所有内容
- 使用单个变量对字符输入进行计数
- 确定用户字符输入 C++ 的结束
- 将单个字符串/字符输入串行监视器
- 如何将字符输入限制为仅获取一个字符串"cin"
- C++:使用 fgets() 读取字符输入时出错
- 如何拒绝 cin 中的字符输入并定义最小和最大整数值
- C++ 字符输入仅输出第一个字母
- 限制 2D 数组中的字符输入
- 循环直到整数输入在所需范围内无法处理非数字字符输入
- C++常量字符*输入
- 使用带符号字符输入的isalnum-Visual C++
- 限制C++中的字符输入
- 字符输入问题
- 字符** + 输入" "字符
- 文件 I/O 操作 - 奇怪的字符输入
- 如何在不暂停循环的情况下使用字符输入停止循环
- C++ - 对'if'语句使用特定字符输入
- 使用 "NEW" 获取字符输入和给定输出,并从用户那里获取字符串长度
- 正确的逐个字符输入