作者xflash96 (Will)
看板b97902HW
標題Re: [討論] 使徒七
時間Wed Oct 29 17:57:02 2008
覺得使徒七的測試程式有問題...
我用strtok的方法寫的,其中有一個存id位置的array id[LMAX]
改變LMAX從1000, 1002, 1010, 1012, 1013
每次測的分數都不一樣
其中1011 可得10分....有些9分6分4分7分...
不知是否是批改程式allocate memory時的問題...
b97058,紀錄與程式在裡面
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.30.84
1F:推 ckclark:應該是 sizeof(nothing) == 4000 的關係 10/29 22:07
2F:→ ckclark:小聲說 我們沒有什麼測試程式 只有你的程式 & 我們的測資 10/29 22:08
3F:推 dh3014:嗯,就我所看到的,是 i < (int)sizeof(nothing) 的問題 10/29 22:21
4F:→ dh3014:這樣子的話一開始宣告 char nothing[40][100] 就有問題 10/29 22:21
5F:→ xflash96:謝謝。可是我用printf debug時出錯的地方是在變存數辨認 10/29 22:29
6F:→ xflash96:在ubuntu下跑也沒segment fault... 10/29 22:29
7F:→ xflash96:超奇怪的,有時a出問題卻在不相干的b產生影響... 10/29 22:31
8F:推 dh3014:當你今天使用了超過宣告範圍的陣列索引值,可能的情況很多 10/29 23:18
9F:→ dh3014:可能剛好沒事,過了。可能os給process的memory space剛好 10/29 23:19
10F:→ dh3014:沒了->segmentation fault,可能compiler在後面放了別的變 10/29 23:19
11F:→ dh3014:數->某些變數的值會有神秘的side effect... 所以牽扯到陣列 10/29 23:20
12F:→ dh3014:索引值的bug,在不同的平台、compiler下有不同的結果,不是 10/29 23:20
13F:→ dh3014:什麼奇怪的事。 10/29 23:20
14F:推 ckclark:剛看到跑sizeof(nothing)會跑到存identifier的記憶體 10/29 23:30