看板 C_and_CPP 關於我們 聯絡資訊
使用平台:dev c++ 在用 scanf 的時候 要是寫成 scanf("%d",&number); printf("%d",number); 會很順利的輸入整數資料然後在輸出 例: 5 5 但要是寫成 scanf("%d ",&number); /* %d後面多一個 空格 */ printf("%d",number); 執行的時候當輸入完整數資料時 會要你再輸入一個沒用的東西 然後才會輸出第一次輸入的整數 中間輸入的東西不知道跑哪去 例: 5 balabala1234 5 請問為啥會這樣阿? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.171.67.236
james732:它沒吃飽 XD 04/19 01:31
freesamael:space在scanf格式是有意義的,用來match space 04/19 03:23
freesamael:match的space應該是符合isspace()的所有字元 04/19 03:25
freesamael:所以換行、tab、空白都被吃掉,scanf就不會停 04/19 03:26
ledia:推沒吃飽, 沒有 match 到樓上說的東西 程式會一直等喔 04/19 09:45
Knighter:scanf("%d",&p);""中間不能有空格喔!!! 04/19 15:02
wudidog:可以有空格,但要放在%d前面,不要放在後面 04/20 01:32
fgkor123:3Q 找這篇才找到程式問題 03/31 00:07