有時候同一個程式碼明明前一分鐘剛跑完都沒問題,偶爾關掉之後再跑一次就會出現0xc0
000364的錯誤,過一陣子再重跑又沒問題了
上網查了一下好像有人說是編譯器的問題,但我換了別的編譯器也都是有同樣的問題,有
人有這方面的經驗或是實用的方法嗎,雖然說等一陣子莫名又可以跑了,但這種不知何時
會產生的問題還是很讓人不安QQ
作者:
ko27tye (好滋好滋)
2021-12-05 16:21:00這種問題通常是你變數沒初始化 建議你還是貼code上來問
作者:
TWkobe (中華柯比)
2021-12-05 16:22:00會不會哪些地方忘了free, 用valgrind檢查有沒有leak?
基本上都是自己的問題居多而且自己會出的包也不限於動態還是靜態配置
作者:
lc85301 (pomelocandy)
2021-12-05 17:54:00你的問題應該是寫了那個吧
作者:
firejox (Tangent)
2021-12-05 18:25:00所以我說那個程式碼呢
作者:
Lipraxde (Lipraxde)
2021-12-06 11:21:00動態記憶體要自己的管理 lifecycles,比較容易出錯XD
作者:
peter98 (新兵)
2021-12-06 12:29:00動態記憶體常錯(X) 寫的動態記憶體常錯(O)
作者:
F04E (Fujitsu)
2021-12-06 13:40:00呵呵 沒code是要人家擲杯膩
作者:
f953024 (=.=a)
2021-12-06 23:10:00你有想過你到底真正在追求什么呢
作者:
descent (「雄辯是銀,沉默是金」)
2021-12-07 23:14:00編譯器通常是最後才需要懷疑, 一般都是程式有錯這種問題當然不安, 所以要找出根本問題, 修正後會很爽
作者:
chchwy (mat)
2021-12-09 10:01:00動態記憶體"比較容易寫錯" 錯的是寫的人 不是這個機制本身
作者:
suhorng ( )
2021-12-10 17:30:00各個 sanitizer 還有 warning 都開一開方便除錯
作者: disabledman (m.m.) 2021-12-11 11:44:00
仔細看CODE,確定自己真的瞭解來龍去派。
作者: qwerasdf6102 (eat_centrum) 2021-12-12 11:59:00
就是因為這樣 才有智慧指標這種東西
作者: chaos1993 (棧前小二) 2021-12-16 18:41:00
請先質疑你的code有沒有好好做到記憶體控管
跑embedded嗎?如果是real mode的話應該滿常見的...
請問一下K大為什麼embedded的real mode會很常見呢?
作者: negogoro (尼勾勾肉) 2021-12-26 00:26:00
你有delete或free嗎
c++的話 懶人就多用std smart pointer吧
作者:
GankTw (GankTw)
2021-12-30 01:21:00用valgrind 跑看看
作者:
whatai (多多)
2021-12-30 17:45:00embedded system 記憶體太小 32M RAM 算是高規格了大量的動態記憶體分配可能導致記憶體破碎
我剛開始寫程式也是常常覺得程式語言有問題但是至今還沒對過一次
32MB... 我現在的案子,能給我 32KB 做夢都要偷笑了 XD
32M至少有protected mode啦.... real mode還有寫不好的程式直接偷蓋你寫入的記憶體... -_-;所以回答一下上面:所以real mode滿常見這種妖魔鬼怪
你要不要用smart pointer啊......程式是照你寫的跑,而不是照你想的跑。
作者: howareuuu 2020-01-25 19:08:00
Smart pointer
作者:
dzwei (Cout<< *p << \n ;)
2020-02-21 18:57:00其實,smart pointer也是有些東西要注意比方說 cycler shared poonter
作者: dreamroad (...) 2020-04-01 21:40:00
你沒有厲害到寫出會讓compiler出錯的code ,通常都是自己的問題