C++怎么从输入流里面提取目标类型的字符

是用string对象么,stringstring1;cin>>string1;我想判断输入的是数字还是字母或者是其他符号,然后再进行判断,怎么写呢... 是用string对象么,string string1; cin >> string1;我想判断输入的是数字还是字母或者是其他符号,然后再进行判断,怎么写呢 展开
 我来答
西门飞磚
2012-01-06 · 超过17用户采纳过TA的回答
知道答主
回答量:40
采纳率:0%
帮助的人:39.5万
展开全部
计算机内部存储不管是数字还是字母都是用的整数。
就可以通过每个元素相加的和,比如输入一个三位数,那么他每个元素的和肯定是<=27的,就可以断定它为一个数字的字符串。

然后其他符号在计算机内部存储的数字代码比124(z)大。所以3个字符的string每个元素的相加<=372;

就这样判断。
int sum = 0;
string string 1;
cin>>string1;
char* p = string1;
while(p)
sum+=*p++;
if(sum<=27) cout<<为数字;
else if(sum>27&& sum<=372) cout<<为字母;
else if(sum>372) cout<<为其他符号;
如果要知道输入的是几个字符的字符串,就用指针计算一下,然后得到相应的每个元素的和作为判断条件
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式