Re: 我寫QuickSort來測試 可是為什麼出現這訊息

看板MacDev作者 (いまがその時だ)時間19年前 (2005/10/28 09:53), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/2 (看更多)
※ 引述《nighter (@______________@)》之銘言: : [Session started at 2005-10-28 03:01:28 +0800.] : Test2 has exited due to signal 11 (SIGSEGV). : Test2是我用Xcode 取的Project名稱 : ===我的code (輸入在main.c裡)==== : #include <stdio.h> : #include <stdlib.h> : #include <math.h> : #include <time.h> : void __qsort( double *data, int num); : void swap( double *, int, int ); : int main() : { : int num = 20, i; : double data[ 20 ] = { 1.2, 1.3, 1.21, 1.6, 4.7, 0.8, 5.3, 7.1, 2.5, 2.5 : , 3.3, 0.4, 1.6, 2.0, 9.9, 21.3, 2.4, 7.7, 10.2 : , 13.2 }; : data[ num ] = HUGE_VAL; 是不是這個問題我不知道,不過 陣列的算法是從 0 開始,你的 data 陣列宣告大小為 20 所以可存取範圍為 data[0]-data[19] 共20個空間 也因此 data[num(20)] 不在 data 的存取範圍內 : __qsort( data, num); : printf("\n\n"); : for( i = 0; i < num; i++ ) : { : printf("%f\n", *( data + i) ); : } : return 0; : } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 60.248.161.34
文章代碼(AID): #13OOI3br (MacDev)
文章代碼(AID): #13OOI3br (MacDev)