[問題]如何給動態產生的二維陣列一定的值? |
尚未結案
|
kingmiss
一般會員 發表:13 回覆:8 積分:4 註冊:2003-12-04 發送簡訊給我 |
|
RaynorPao
版主 發表:139 回覆:3622 積分:7025 註冊:2002-08-12 發送簡訊給我 |
引言: 請問一下 我用這個方法產生一個二維陣列p[10][10] int **p=new int*[10]; for (int a=0;a<10;a ) p[a]=new int[10]; 如果我要設定這10x10陣列的值均為0,請問我應該如何做會比較快?謝謝kingmiss 你好: 請參考以下的做法 < class="code"> for(int i=0; i<10; i ) { for(int j=0; j<10; j ) { p[i][j]=0; } } -- Enjoy Researching & Developing -- 發表人 - RaynorPao 於 2003/12/04 23:05:12
------
-- 若您已經得到滿意的答覆,請適時結案!! -- -- 欲知前世因,今生受者是;欲知來世果,今生做者是 -- -- 一切有為法,如夢幻泡影,如露亦如電,應作如是觀 -- |
kingmiss
一般會員 發表:13 回覆:8 積分:4 註冊:2003-12-04 發送簡訊給我 |
|
taishyang
站務副站長 發表:377 回覆:5490 積分:4563 註冊:2002-10-08 發送簡訊給我 |
kingmiss您好:
引言:不過這樣好像會把point值全部設定為0,而不是把該value設定為0嗯?您再確認一下,並試試下面的code int **p=new int*[10]; for (int a=0;a<=10;a ) p[a]=new int[10]; for(int i=0; i<10; i ) { for(int j=0; j<10; j ) { p[i][j]=0; Memo1->Lines->Add(p[i][j]); } }順心 <>~我也是在學習的階段,回答的不好請您多多見諒與指教~> |
kingmiss
一般會員 發表:13 回覆:8 積分:4 註冊:2003-12-04 發送簡訊給我 |
引言: kingmiss您好: 嗯?您再確認一下,並試試下面的codeint **p=new int*[10]; for (int a=0;a<=10;a ) p[a]=new int[10]; for(int i=0; i<10; i ) { for(int j=0; j<10; j ) { p[i][j]=0; Memo1->Lines->Add(p[i][j]); } }順心 <>~我也是在學習的階段,回答的不好請您多多見諒與指教~> >>< face="Verdana, Arial, Helvetica"> 恩恩,感謝各位大大 我這個方法我也有想過,但是速度慢很多 因為我之前用靜態陣列, 可以使用 |
JerryKuo
版主 發表:42 回覆:571 積分:322 註冊:2003-03-10 發送簡訊給我 |
引言:kingmiss您好: 不曉得大大是怎麼計算速度的?不過我都是用taishyang,RaynorPao的方法, 就程式碼來看相當精簡,沒有會慢的理由。如果要硬拗,我想是因為int **p=new int*[10]; for (int a=0;a<=10;a ) p[a]=new int[10]; for(int i=0; i<10; i ) { for(int j=0; j<10; j ) { p[i][j]=0; Memo1->Lines->Add(p[i][j]); } } 處理時間 = 設定初始值的時間 宣告動態宣告的時間所以才會覺得慢吧。靜態宣告因為事先宣告好,所以只考慮設定初始值的時間 感覺起來就比較快吧。 處理時間 = 設定初始值的時間不過我記得有ZeroMemory()這個函數很好用,參考看看。 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |