[問題] 遇到換行結束輸入 in C

看板C_and_CPP作者 (請給我前叉)時間16年前 (2009/05/05 04:00), 編輯推噓2(201)
留言3則, 3人參與, 最新討論串1/4 (看更多)
很抱歉問了一個笨問題 可是剛才打關鍵字沒找到相關方法 (不然就是找到C++的 = =a ) 就是 我要讀入一串數字(是int 不超過10個) 可能只有2個也可能有10個,結束輸入於換行符號 請問要怎麼寫呢? 找到最接近的方法是gets()讀入string 然後用sscanf去讀 不過因為沒用過sscanf所以剛才sigmentation fault了XD 有更好的方法或者是正確的使用法嗎@@ 繼續辜狗中... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.123.10.100 好像是buffer的問題 因為sscanf是讀入buffer 可是我buffer裡面還有東西@_@ 題目要求是,數行的數個數字 所以 10 20 30 30 40 50 60 70 1 2 3 3 4 5 都是合理測資orz ※ 編輯: FrankTrjpp 來自: 140.123.10.100 (05/05 12:17)

05/05 12:14, , 1F
正確用法是試圖修正你的 segmentation fault
05/05 12:14, 1F

05/05 12:17, , 2F
我是不是蓋到樓上的推文了啊 囧
05/05 12:17, 2F
靠... 有個很沒腦的方法... scanf("%d%c",&num,&ch); 只要ch是\n的時候就結束輸入.............. 但是我還是想問這個問題 總不能每次都用這個方法吧= = ※ 編輯: FrankTrjpp 來自: 140.123.10.100 (05/05 12:20)

05/05 12:44, , 3F
fgets + strtok
05/05 12:44, 3F
文章代碼(AID): #19_xdaqu (C_and_CPP)
討論串 (同標題文章)
文章代碼(AID): #19_xdaqu (C_and_CPP)