時間:2008/05/27
進度:2.正確宣告extern以使用其他副程式的函數
內容:
①開啟BCB。
(預設的Project1已有一個Unit1.cpp。)
②建立一個.c檔作為我們的副程式。
開啟BCB,最上排選單點選File >> New >> C File。
(目前這個我們新增的File1.c已經加入Project1。)
③在File1.c裡宣告一個變數ˋ一個函數,並定義之。例:
_________________________
int aaa=5;
void Selection_Sort(int *Num)
{
int min,temp,i,j;
for(i=0; i<=8; i++)
{
min=i;
for(j=i; j<=9; j++)
{
if(Num[j]<Num[min])
min=j;
}
temp=Num[i];
Num[i]=Num[min];
Num[min]=temp;
}
}
④以預設的Unit1.cpp作為我們的主程式,並呼叫副程式File1.c的變數ˋ函數來使用。
在Unit1.cpp裡宣告我們所用到的陣列ˋ副程式的變數ˋ副程式的函數。如下所示:
_________________________
int Num[10];
extern "C" void Selection_Sort(int*);
extern int aaa;
⑤在Unit1上新增兩個Label原件。Label1顯示副程式裡的函數正確執行後被修改的陣列值(如果該值還是原來的值,我們可知該副程式裡函數未成功執行。)。Label2顯示副程式裡的aaa變數值。
⑥在主程式裡定義陣列初值 >> 呼叫副程式的函數做排序 >> 顯示結果。
_________________________
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
for(int i=0; i<10; i++)
Num[i]=10-i;
Selection_Sort(Num);
Label1->Caption=IntToStr(Num[0]);
Label2->Caption=AnsiString(aaa);
}
2008年5月27日 星期二
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言