[問題] 請問有辦法讓陣列的index從1開始嗎?

看板C_and_CPP (C/C++)作者 ( )時間16年前 (2009/11/04 21:14), 編輯推噓4(406)
留言10則, 6人參與, 最新討論串1/4 (看更多)
最近在看 Numerical recipes in C 可是問題來了,裡面的程式碼陣列的指標看起來是從1開始的... 每個函數又呼叫了書裡面的其他函數,改起來實在非常麻煩 但是我只是想跑看看結果而已, 想問有沒有用什麼方法讓陣列從1開始,然後又能符合 函數參數 的解決方法。 以下列舉一個函數原型, void lfit(float x[], float y[], float sig[], int ndat, float a[], int ia[], int ma, float **covar, float *chisq, void (*funcs)(float, float [], int)) 我的平台是BCB 謝謝! 感覺是不太可能有 =.=||| -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.169.42.127

11/04 21:17, , 1F
邏輯問題而以阿 你要1開始就自訂1開始...
11/04 21:17, 1F

11/04 21:19, , 2F
用正規表達式去取代
11/04 21:19, 2F

11/04 21:23, , 3F
開陣列的時候size+1就好.
11/04 21:23, 3F

11/04 21:24, , 4F
array[0]當作沒看到
11/04 21:24, 4F

11/04 21:46, , 5F
其實我一開始也是這樣想 不過呼叫到別的函數時發生錯誤
11/04 21:46, 5F

11/04 21:47, , 6F
我本來想說要偷吃步的 看來還是得看完所的function
11/04 21:47, 6F

11/04 21:49, , 7F
我在研究看看好了 謝謝大家!
11/04 21:49, 7F

11/05 00:05, , 8F
void lfit(&x[1], &y[1], &sig[1], ndat, &a[1]....
11/05 00:05, 8F

11/06 11:47, , 9F
int index(int n){ return n+1; }
11/06 11:47, 9F

11/06 11:48, , 10F
好像應該寫成 n-1 才符合原po要求 XD
11/06 11:48, 10F
文章代碼(AID): #1AyNuypb (C_and_CPP)
文章代碼(AID): #1AyNuypb (C_and_CPP)