[問題] 請問有人碰到過這種BUG嗎?已回收

看板MATLAB作者 (ZC)時間16年前 (2009/05/18 08:52), 編輯推噓2(202)
留言4則, 3人參與, 最新討論串1/1
昨天寫了個程式...因為太大一串...所以把部分程式包成副程式的方式來CALL... 結果問題來了... 怎麼執行怎麼錯...而且錯的地方還會跳...也就是說每次錯的地方都不一樣... 因為整個程式內沒有任何rand的東西...所以所有參數的變化順序應該是完全相等的... 更神奇的是...如果用breakpoing去一步步觀察...又不會出錯了...但是如果想一次跑完 就一定會給我死在那裏... 於是我仔細找bug...終於找到一個很奇怪的bug... 我在包裝成副程式的時候...有一個input丟進副程式後完全沒用到...然後又傳出來... 照理來說雖然這種行為有腦殘到...但應該不影響執行...頂多是拖一點點點的速度而已... 但是我發現這個input被傳出時候就亂掉了...而且原本是矩陣的傳出後就變成字串... 內容還是"error"...再次申明...這個矩陣傳進去後完全沒有讀到也沒有再寫過... 後來修改過後總算沒事了...但是這個奇怪的問題在2008b與2009a都會出現... 有神人能解釋一下嗎? 還是有人也碰過類似的例子? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.111.209.104

05/18 11:53, , 1F
你有用到mex嗎? 看起來像是記憶體錯亂
05/18 11:53, 1F

05/18 13:06, , 2F
沒有耶...mex是啥?...我也不會用XD~
05/18 13:06, 2F

05/18 13:36, , 3F
就是自己寫c 再compile成matlab可以用的東西
05/18 13:36, 3F

05/19 06:18, , 4F
我有遇過一個問題是副程式程式碼寫太長會有問題(row的字數)
05/19 06:18, 4F
文章代碼(AID): #1A4B5WEl (MATLAB)
文章代碼(AID): #1A4B5WEl (MATLAB)