Re: [問題] hw2

看板EE_DSnP作者 (哭哭)時間15年前 (2009/04/05 00:25), 編輯推噓4(4013)
留言17則, 5人參與, 4年前最新討論串2/5 (看更多)
晚上我抱著試試的心態 用家裏電腦的ubuntu試run看看(和當初寫code是不同台電腦) 然後它 又crash了 == == 我開始懷疑當初我是不是寫太久 寫到頭昏腦脹 看到我code可以run的假象了......... 我用ddd跑 發現crash點1 它在inssertChar()裡 .... *_readBufPtr = *temp; --> cout << *_readBufPtr; _readBufPtr++; ...... 執行箭號那行時crash 在那行之前都是OK的 囧 cout有做了啥事會讓code掛掉嗎.... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 124.8.30.93 ※ 編輯: fiafju 來自: 124.8.30.93 (04/05 00:26)

04/05 00:31, , 1F
*temp真的有指ㄧ個可以cout在螢幕上到東西嗎?
04/05 00:31, 1F

04/05 00:39, , 2F
有阿 跑完*_readBufPtr=*temp 後*_readBufPtr的值真的有變
04/05 00:39, 2F

04/05 00:39, , 3F
有試著用ddd的"Run in execution window"試試嗎
04/05 00:39, 3F

04/05 00:40, , 4F
可以看到cout出來的結果
04/05 00:40, 4F

04/05 00:40, , 5F
感覺會有點像真的在工作站上執行該程式
04/05 00:40, 5F

04/05 00:41, , 6F
我用了 就是用了才知道當在哪 和 temp有丟值進_readBufPtr
04/05 00:41, 6F

04/05 00:42, , 7F
temp指到不該指的地方了吧..
04/05 00:42, 7F

04/05 00:42, , 8F
cout << temp; 看看位址是不是不太對
04/05 00:42, 8F

04/05 01:52, , 9F
感謝兩位~~ 的確是temp 在搞怪
04/05 01:52, 9F
※ 編輯: fiafju 來自: 124.8.8.104 (04/05 01:55)

04/05 01:56, , 10F
可是我用ddd看 temp在crash之前都有正常運作耶
04/05 01:56, 10F

04/05 01:57, , 11F
也有把該存的值存進去阿 直到cout那行才炸 這是為什麼呢??
04/05 01:57, 11F

04/05 02:24, , 12F
就像 HW#1.2 的 prob 1 一樣, 應該是記憶體被 contaminated
04/05 02:24, 12F

04/05 02:25, , 13F
cout 也會吃記憶體, 所以 temp 所指到的記憶體已經無效?
04/05 02:25, 13F

04/05 02:59, , 14F
感謝老師!! (老師好晚上站阿XDDD)
04/05 02:59, 14F

04/05 03:00, , 15F
其實後來也有想到 這應該就是老師在hw1要給我們看的東西
04/05 03:00, 15F

04/06 23:44, , 16F
所以後來找到原因了嗎? 可以分享一下嗎?
04/06 23:44, 16F

07/12 00:13, 4年前 , 17F
可是我用ddd看 te http://yofuk.com
07/12 00:13, 17F
文章代碼(AID): #19rueK1B (EE_DSnP)
討論串 (同標題文章)
完整討論串 (本文為第 2 之 5 篇):
問題
2
7
問題
4
17
問題
2
2
問題
1
1
問題
4
13
文章代碼(AID): #19rueK1B (EE_DSnP)