看板 C_and_CPP 關於我們 聯絡資訊
題目是輸入一個指令 然後執行 例如說 你打sum 他就把全部的數列加起來 你打sum 1 他就把第一行數列的值加起來 一開始卡在用字串輸入 不知道怎麼判斷 那個'1'也不知道怎麼用 我google後 找到有strtok這個方法 可以把字串分割 再把那個'1' 用atoi 轉為int用 然後好像sscanf也可以 那請問還有其他方法嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 180.217.77.180 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1552736340.A.D10.html ※ 編輯: timmy999 (180.217.77.180), 03/16/2019 19:40:09
dododavid006: 如果格式固定比如一個指令幾個數字 那 sscanf 比較 03/16 22:10
dododavid006: 好用 如果不固定就用 strtok 吧 再來就是自己做分割 03/16 22:11
loveme00835: 可以參考 strtol() https://bit.ly/2Ho6Nl9 03/17 00:56
Schottky: 覺得fgets和strtok不夠高級嗎?來這個lex+yacc拿去用 03/17 01:15
Schottky: 我是覺得 strtok 很夠用了啦 03/17 01:16
IhateOGC: sscanf全部字串後,再用strtok分析指令 03/17 01:30
IhateOGC: 不過我老實和你講,會考stdio的職缺通常很雷 03/17 01:32
IhateOGC: 現在都是資料庫或是表單item點選了 03/17 01:33
IhateOGC: 字串實作問題百百種勞力活你學不到啥 03/17 01:34
IhateOGC: 不如去學習一下Regex規則,例如密碼命名規則 03/17 01:36
大一計概而已 ※ 編輯: timmy999 (59.120.78.233), 03/17/2019 02:59:25
sarafciel: 其實程度夠的話切字串這種東西我會建議自己刻XD 03/18 14:08
sarafciel: 不過大一計概的話就乖乖用strtok吧 這東西是一個蠻好的 03/18 14:09
sarafciel: 學習對象 從負面意義上來說(逃) 03/18 14:10
MOONRAKER: 大一計概就知道有兩種就可以了 你只是在入門不用想一次 03/18 14:48
MOONRAKER: 這個那個都學完 沒有一步到位 如果有人說可以那是外行 03/18 14:49