gpt4 book ai didi

c++ - 你如何限制用户在 C++ 中输入的最大字符数?

转载 作者:搜寻专家 更新时间:2023-10-31 01:49:43 25 4
gpt4 key购买 nike

我想要它,以便当用户输入超过 5 个字符时,会发生一些事情,而不是只是跳过其余的。

在这段代码中,如果您输入超过 5 个字符,它只会显示前 5 个字符。我想在这里放置一个“if”语句,如果用户输入超过 5 个字符,它将显示错误或其他内容,而不仅仅是显示前 5 个字符。

#include <iostream>
#include <iomanip>

int main()
{
using namespace std;
string nationname;
int maxchar = 5;
cout << "What is the name of your nation?\n";

cin >> setw(maxchar) >> nationname;

cout << "The name of your nation is " << nationname;
cin.ignore();

return 0;
}

谢谢!

最佳答案

您可以先完整读取字符串,然后对其进行验证:

int main()
{
using namespace std;

const int maxchar = 5;
string nationname;

cout << "What is the name of your nation?" << endl;

cin >> nationname;

if (nationname.size() > maxchar)
{
err << "The input is too long." << endl;
return 1;
}

// ...
}

顺便说一句,您应该在提示符中使用 std::endl 而不仅仅是 \n;您要确保在开始等待用户输入之前将提示刷新到屏幕上。 (编辑:正如 Loki Astari 在评论中指出的那样,这部分实际上并不是必需的。)

关于c++ - 你如何限制用户在 C++ 中输入的最大字符数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16134822/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com