[問題] 要算一行有幾個數字要怎麼算?

看板C_and_CPP (C/C++)作者 (City*Mate)時間16年前 (2010/05/23 22:09), 編輯推噓2(205)
留言7則, 4人參與, 最新討論串1/1
遇到的問題: (題意請描述清楚) input.txt ------------------ 12 15 1 6 1 2 3 ------------------ //每行有幾個數字不一定 在這裡一定不超過4個 ifstream file("input.txt"); int a,b,c,d,num; ??? 將數字依次放入a,b,c,d num則記錄有幾個數字 如果每行不到4個數字 則不管它 但是要有辦法知道總共有幾個數字 想要問問看有沒有比較合適的語法來處理這類的問題? 希望得到的正確結果: 第一行:a=12 b=15 c=1 d=6 num=4 第二行:a=1 b=2 c=3 num=3 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.249.109

05/23 22:12, , 1F
我會想先用 getline 讀行,然後用 stringstream 處理
05/23 22:12, 1F

05/23 22:12, , 2F
不過好像有點笨... 不知道有沒有更好的方法
05/23 22:12, 2F

05/23 22:16, , 3F
scanf("%d %d %d %d\n", ...); 檢查return?
05/23 22:16, 3F

05/23 22:29, , 4F
用 istream_iterator<int> 拿來初使化容器, 有地方放
05/23 22:29, 4F

05/23 22:29, , 5F
也有個數
05/23 22:29, 5F

05/23 22:30, , 6F
搭配一樓大大說的 getline, 就能每行分開存了
05/23 22:30, 6F

05/24 02:05, , 7F
file >> a;
05/24 02:05, 7F
文章代碼(AID): #1B-JSeci (C_and_CPP)
文章代碼(AID): #1B-JSeci (C_and_CPP)