C++ 检查用户的名字不要太短
C++ Check user's first name is not too short
我有一个函数(如下)可以检查用户的名字是否有无效字符,并且工作正常。
while(run)
{
size_t positionFirstName = userFirstName.find_first_of(invalidCharacter, 0, sizeof(invalidCharacter));
if (positionFirstName != string::npos)
{
cout << "Please only use letters. Please re-enter your first name." << endl;
cin >> userFirstName;
}
else
{
run = false;
}
}
我还想检查用户的名字是否不短于 3 个字符。我已经尝试了几次,可以让程序运行第一个函数,但是如果我放入另一个函数来检查名称长度,它似乎会跳过它。有什么想法吗?
这里有一个稍微调整的方法:
cout << "Please enter your first name." << endl;
while( cin >> userFirstName )
{
size_t positionFirstName = userFirstName.find_first_of(invalidCharacter, 0, sizeof(invalidCharacter));
if (positionFirstName != string::npos)
{
cout << "Please only use letters.";
}
else if( userFirstName.size() < 3 )
{
cout << "Name must be at least 3 characters long."
}
else {
break;
}
cout << " Please re-enter your first name." << endl;
}
请注意,我避免了重复,但只打印错误并在一个地方处理输入。
相关文章:
- C++LDAP检查用户是否是特定组的成员
- 如何检查用户的输入是否有效以及我正在寻找的数字?
- 如何检查用户是否输入了元音字符?
- 有没有办法检查用户输入是否是数字?
- 如何检查用户输入是 1 还是 2
- 检查用户是否是 Windows 中本地计算机上的管理员C++
- 如何检查用户是否已打开应用程序
- 如何检查用户输入仅包含字母
- 如何检查用户何时按 Enter 键而不提供 C++ 值
- 检查用户输入是否正确的函数不起作用
- 检查用户输入的整数是否包含所有 1 或 0?
- 如何检查用户是否没有输入任何字符串
- c++ 根据随机生成的数组检查用户输入的值
- C++检查用户输入
- 检查用户的负输入,使用数组
- 检查用户是否在数组中键入辅音
- 如何检查用户登录到Windows的时间
- 检查用户输入是否按字母顺序排列
- 如何检查用户是否输入了整数
- 正在检查用户的有效输入并与文本文件进行比较