我有一个叫做char * panimal_name
的指针。这个指针只能输入20个字符,如果用户输入更多,它必须要求用户重新输入。验证char *取自std :: cin的长度
我试过在流中的字符计数,也使用strlen()
,但我仍然有问题。
cout << "Enter Animal Name: ";
cin.ignore();
cin.getline(panimal_name, 20);
任何帮助,将不胜感激。
编辑:嗯,我只希望它从用户最多只需要20个字符。如果超过20,则应该要求用户重新输入有效的输入。然而,在这个设置中,它现在为我的下一个输入弄虚作乱。我使用这个的原因,而不是std::string
,因为我现在正在学习指针。
P.S.我知道在这种情况下,字符串可能会更好,以便于使用。
您遇到了什么问题? – theglauber 2012-02-21 17:16:37
你有没有任何理由不使用字符串? – DumbCoder 2012-02-21 17:18:14
@DumbCoder:由于某些原因,学校和大学绝对不希望学生使用字符串数据类型。他们吟唱“char *”的口头禅。 (另外,几乎从未提及STL的任何部分) – 2012-02-21 17:20:03