二維陣列利用(call by reference)的方式? |
答題得分者是:jow
|
jenwe
一般會員 發表:34 回覆:38 積分:24 註冊:2007-03-23 發送簡訊給我 |
|
jow
尊榮會員 發表:66 回覆:751 積分:1253 註冊:2002-03-13 發送簡訊給我 |
[code cpp] //--------------------------------------------------------------------------- #ifndef fMainH #define fMainH //--------------------------------------------------------------------------- #include #include #include #include <Forms.hpp><br />//--------------------------------------------------------------------------- class TForm1 : public TForm { __published: TButton *Button1; TListBox *ListBox1; TButton *Button2; void __fastcall Button1Click(TObject *Sender); void __fastcall Button2Click(TObject *Sender); private: //一維陣列---------------------------------------------- bool __fastcall SetValue(int A[], int Size); String __fastcall ArrayToStr(int A[],int Size); //二維陣列---------------------------------------------- bool __fastcall SetValue(int A[][10], int Size); TStringList* __fastcall ArrayToStr(int A[][10],int Size); public: __fastcall TForm1(TComponent* Owner); }; //--------------------------------------------------------------------------- extern PACKAGE TForm1 *Form1; //--------------------------------------------------------------------------- #endif [/code] [code cpp] //--------------------------------------------------------------------------- #include #pragma hdrstop #include "fMain.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { Randomize(); } //--------------------------------------------------------------------------- bool __fastcall TForm1::SetValue(int A[], int Size) { int Len=Size/sizeof(int); for(int i=0;i } //--------------------------------------------------------------------------- String __fastcall TForm1::ArrayToStr(int A[], int Size) { int Len=Size/sizeof(int); String S="{"; for(int i=0;i return S ="}"; } //--------------------------------------------------------------------------- //--------------------------------------------------------------------------- bool __fastcall TForm1::SetValue(int A[][10], int Size) { int Len=Size/(sizeof(int)*10); for(int i=0;i A[i][j]=random(100); return true; } //--------------------------------------------------------------------------- TStringList* __fastcall TForm1::ArrayToStr(int A[][10],int Size) { int Len=Size/(sizeof(int)*10); TStringList *L = new TStringList(); for(int i=0;i return L; } //--------------------------------------------------------------------------- //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { //一維陣列 int X[10]; int Size=sizeof(X); ListBox1->Clear(); if(SetValue(X,Size)) ListBox1->Items->Add(ArrayToStr(X,Size)); } //--------------------------------------------------------------------------- void __fastcall TForm1::Button2Click(TObject *Sender) { //二維陣列 int X[10][10]; int Size=sizeof(X); if(SetValue(X,Size)){ TStringList *L=ArrayToStr(X,Size); try{ ListBox1->Items->Text=L->Text; } __finally{ delete L; } } } //--------------------------------------------------------------------------- [/code] |
jenwe
一般會員 發表:34 回覆:38 積分:24 註冊:2007-03-23 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |