作者tzuci6649 (曹操)
看板C_and_CPP
标题[问题] 关於scanf....
时间Mon Mar 30 22:23:33 2009
各位板友~我现在撰写程式遇到一个困扰
scanf( "%c", &token );
假设我输入的数据为 ( XX OO ) 然後enter
^
这边照理说不是只有一个空白吗
但是我测出来他每次就会多一个换行( 我是一个字元一个字元判断 )
是因为最後我按了enter的关系吗?
我有参考板上文章使用 scanf( "%c\n", &token ); // 这个虽然有成功
或者 scanf( "%c ", &token );
或者 fflush( stdin ); // 会完全抓不到东西耶?
不过因为数据有时跟括号不会有空白, ex. (XX OO)
这样用 scanf( "%c\n", &token ); 也是会错
这样我该怎麽做比较好呢..好苦恼XD
希望给予解答..感谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.57.78.11
※ 编辑: tzuci6649 来自: 61.57.78.11 (03/30 22:24)
1F:推 christianSK:用字串抓吧 03/30 22:32
2F:推 u8906250:可以试看看用gets() 03/31 19:54
3F:推 u8906250:抱歉,man建议不要用gets因为无法确定输入的长度 所以... 03/31 19:58
4F:→ u8906250:可用fgets (s, sizeof(s), stdin)取代 03/31 19:59