作者simpdanny (辛普丹尼)
看板EE_DSnP
标题Re: [问题] hw1.2.p3c
时间Mon Oct 8 21:40:41 2012
其实估狗就会看到了...
cin 在iostream里面找字元的时候(就是在读你键盘)
读到\n (换行) 时候会停
但是stream还停留在 \n 上不会跳过
getline在读的时候不会忽略这格
会以为读到\n( 也就是default delim )
会把这行读起来存在n[0]
所以你会发现在cout debug的时候空了一行
於是bug发生了。
1 . 不要把getline放在cin後...
2 . cin.ignore(XXXXXX)
3 . 用一个dummy去抓那个误读的\n
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.248.73
1F:推 hsnuyi:嗯... 我试过在cin >> arraySize;後加上cout << "___"; 不 10/08 21:45
2F:→ hsnuyi:过没有用 所以以为不是\n的问题 >< 10/08 21:46
3F:→ hsnuyi:喔 然後我cout debug时 没有多一行欸... >< 10/08 21:53
4F:推 hsnuyi:喔喔!! 加上cin.ignore();就好了... Q_Q 感谢大大 >///< 10/08 22:02
5F:→ simpdanny:喔 应该不会多一行XD因为\n不会被存进去 只不过会判断 10/08 22:08
6F:→ simpdanny:终止就是了 10/08 22:08
7F:推 steve1012:好像叫做phanton 蚂蚁书有讲 10/08 22:21
8F:→ hsnuyi:嗯... 好吧 668页有写 不过第14章後我就不知道在干嘛了 @_@ 10/08 22:51