在這段代碼里,如果我初始輸入"a,a,0",輸出正確。但輸入",,0"的話,接下來會(huì)自動(dòng)不需要輸入然后循環(huán)著不斷的輸出,想問一下這個(gè)是什么原因。還有一個(gè)是我將代碼改成了如下:本來目的是過濾輸入的回車,但是如果直接輸入"a,a,0",也會(huì)出現(xiàn)不需要輸入然后不斷地循環(huán)輸出的現(xiàn)象。也想問一下為什么。希望大佬們幫忙解答一下這個(gè)基礎(chǔ)問題,謝謝。
1 回答

MM們
TA貢獻(xiàn)1886條經(jīng)驗(yàn) 獲得超2個(gè)贊
哎,難道C語言真的淘汰了嗎?這么個(gè)問題居然三天沒有人回答。scanf里面的任何%都至少要匹配1個(gè)字節(jié),所以連續(xù)兩個(gè)逗號(hào)是匹配不出任何東西的。注意這里,哪怕是%*...都是只要要匹配一個(gè)字符的,匹配不了的就是失敗
所以我建議你的程序應(yīng)該改成fgets獲得一行之后再sscanf
- 1 回答
- 0 關(guān)注
- 883 瀏覽
添加回答
舉報(bào)
0/150
提交
取消