【发布时间】:2016-01-22 03:52:48
【问题描述】:
首先感谢您花时间阅读本文,
我目前正在用 C++ 编写一个类的驱动程序,我需要用户的一些输入。我已经开始使用typedef 来创建验证程序,这样我就可以很容易地在不同类型之间切换。对于我正在处理的特定问题,我发现我只与char 合作,这导致了我的问题:
我的验证检查输入是否为
char。如果我知道我只是在使用char,那么使用验证毫无意义吗?用户输入的所有内容似乎都是一个字符。用户可以输入任何不会被视为
char的内容吗?
这个问题可能看起来有点微不足道,但我以前从未真正想过这个问题!仍在学习语言,所以任何指导表示赞赏。
有问题的代码(ElementType 的类型为char):
void getInput( ElementType & cho )
{
while ( !(cin >> cho) )
{
cout<< "That is an invalid input..."
<< "\nTry again: ";
}
cout<< endl;
}
【问题讨论】:
-
这一切都非常模糊。您的术语不够准确,无法在没有看到代码的情况下正确回答这个问题。
-
大概你的意思是“一个逻辑字符,其内部表示由单个 8 位字节编码一个 7 位或 8 位值”,而不是
char。这不是迂腐:两者是完全不同的,当你谈论这种事情时,差异是至关重要的。 -
你能澄清你的问题吗?
cin流被定义为输入一系列char对象,因此根据定义,任何输入都是char。
标签: c++ validation input