pointer 問題 |
答題得分者是:jow
|
tidal
初階會員 發表:93 回覆:32 積分:25 註冊:2003-07-15 發送簡訊給我 |
|
jow
尊榮會員 發表:66 回覆:751 積分:1253 註冊:2002-03-13 發送簡訊給我 |
type PArrayOfInteger = ^TArrayOfInteger; TArrayOfInteger = array of Integer; TArrayOfArrayOfInteger = array of TArrayOfInteger; implementation procedure TForm1.Button3Click(Sender: TObject); var A: TArrayOfInteger; I: Integer; begin SetLength(A, 100); try for I := 0 to Length(A)-1 do A[I] := I; ListBox1.Clear; for I := 0 to Length(A)-1 do ListBox1.Items.Add(Format('%d', [A[I]])); finally A := nil; end; end; procedure TForm1.Button4Click(Sender: TObject); var A: TArrayOfInteger; P: PArrayOfInteger; I: Integer; begin //P是指向A的指標 P := @A; SetLength(P^, 100); try for I := 0 to Length(P^)-1 do P^[I] := I; ListBox1.Clear; for I := 0 to Length(P^)-1 do ListBox1.Items.Add(Format('%d', [P^[I]])); finally P^ := nil; P := nil; end; end; procedure TForm1.Button5Click(Sender: TObject); var A: TArrayOfArrayOfInteger; I, J: Integer; begin SetLength(A, 2); try for I := 0 to Length(A)-1 do begin SetLength(A[I], 100); for J := 0 to Length(A[I])-1 do A[I][J] := I*Length(A[I]) J; end; ListBox1.Clear; for I := 0 to Length(A)-1 do for J := 0 to Length(A[I])-1 do ListBox1.Items.Add(Format('%d', [A[I][J]])); finally for I := 0 to Length(A)-1 do A[I] := nil; A := nil; end; end; |
jow
尊榮會員 發表:66 回覆:751 積分:1253 註冊:2002-03-13 發送簡訊給我 |
type PArrayOfInteger = ^TArrayOfInteger; TArrayOfInteger = array of Integer; TArrayOfArrayOfInteger = array of TArrayOfInteger; implementation procedure TForm1.Button3Click(Sender: TObject); var A: TArrayOfInteger; I: Integer; begin SetLength(A, 100); try for I := 0 to Length(A)-1 do A[I] := I; ListBox1.Clear; for I := 0 to Length(A)-1 do ListBox1.Items.Add(Format('%d', [A[I]])); finally A := nil; end; end; procedure TForm1.Button4Click(Sender: TObject); var A: TArrayOfInteger; P: PArrayOfInteger; I: Integer; begin //P是指向A的指標 P := @A; SetLength(P^, 100); try for I := 0 to Length(P^)-1 do P^[I] := I; ListBox1.Clear; for I := 0 to Length(P^)-1 do ListBox1.Items.Add(Format('%d', [P^[I]])); finally P^ := nil; P := nil; end; end; procedure TForm1.Button5Click(Sender: TObject); var A: TArrayOfArrayOfInteger; I, J: Integer; begin SetLength(A, 2); try for I := 0 to Length(A)-1 do begin SetLength(A[I], 100); for J := 0 to Length(A[I])-1 do A[I][J] := I*Length(A[I]) J; end; ListBox1.Clear; for I := 0 to Length(A)-1 do for J := 0 to Length(A[I])-1 do ListBox1.Items.Add(Format('%d', [A[I][J]])); finally for I := 0 to Length(A)-1 do A[I] := nil; A := nil; end; end; |
tidal
初階會員 發表:93 回覆:32 積分:25 註冊:2003-07-15 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |