[問題] hw3執行

看板EE_DSnP作者 (送報生)時間12年前 (2011/11/09 18:35), 編輯推噓2(206)
留言8則, 5人參與, 最新討論串1/1
剛寫完除了 tab dofile的部分 make也過了 剛執行./modCalc 輸入任意指令 都會出現 terminate called after throwing an instance of 'std::out_of_range' what(): basic_string::substr 已經終止 這個訊息 請問這可能是哪個環節出錯呢?? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.4.181

11/09 18:37, , 1F
在使用 substr 的時候,你的範圍超過了
11/09 18:37, 1F
改過substr後 還是 出現一樣的結果 順道一提 在calcCmd 寫好之前 輸入 hell 之類的指令 它會說錯誤 只是正確指令會有上述情形 但寫好之後 就變成這樣了 ※ 編輯: newsboy3423 來自: 140.112.4.181 (11/09 20:05)

11/09 21:36, , 2F
同一樓,大概是沒注意mand和opt的部份
11/09 21:36, 2F

11/09 23:10, , 3F
錯誤訊息都把問題寫清楚了說@@
11/09 23:10, 3F

11/09 23:31, , 4F
不過修了以後 還是出現這種情形
11/09 23:31, 4F

11/09 23:41, , 5F
不知道是不是因為沒有用string::npos的關係呢
11/09 23:41, 5F

11/09 23:43, , 6F
如果到了字串的結尾,會回傳-1而不是傳最後'0'的座標
11/09 23:43, 6F

11/09 23:45, , 7F
我一開始用string.size()去判斷也是出現類似的錯誤
11/09 23:45, 7F

11/10 01:46, , 8F
好像是 opt出了點錯 感謝樓上幾位!!
11/10 01:46, 8F
文章代碼(AID): #1EkbTVoi (EE_DSnP)