注册 登录
编程论坛 C++教室

cin读取问题

taylor0904 发布于 2014-02-25 18:34, 433 次点击
我不能理解cin啊?
所以如果我有一串输入 90。。。39384 我知道要输入10次所以
for(i=0;i<9;i++)
然后如果是“。”我就纪录a++
其他我就干其他事
可是如果我用
int num
if(!(cin<<num)) {
a++


程序每次我一次性输入所有数据就停了,
我如果尝试一个一个输,发现我一旦输入。就停了,
怎么办呢?而且我的cin也像判断如果输入了一个奇怪的数据比如字母,我的程序会告诉输入的人输入了歌什么然后导致错误
求指教
3 回复
#2
taylor09042014-02-25 18:40
我想做的是数独输入读取不过为了简化
也就是让用者输入数据,如果是“。”我就设置可能性为0,然后继续读取下一个输入直到81
途中如果有字母或者其他奇怪数据出现我可以告诉用者哪里输入错误了,
可是cin的clear和ingore直接把我后面所有数据的清理掉了,这样我读到“。”后面数据也就没了,怎么办
#3
谢跃锋2014-02-25 21:29
亲,读取数据是cin>>num吧!
#4
天使梦魔2014-02-26 21:21
cin针对不同的数据类型做不同的数据处理。
其实我说的和你这个问题没半毛钱关系。
不过你会发现的~~~!!!哦也,那是内裤超人出现JJ终结者来临的时候

num是什么数据类型,而cin又对它写入了什么数据类型。
>>符号,把cin流内的数据转入num。而你却把句号作为整数类型传入,你觉得cin会对此做数据转换吗?
1