1. 程式人生 > >c語言中實現超連結(多檔案程式的編譯和連線)

c語言中實現超連結(多檔案程式的編譯和連線)

一個實用價值的c語言應用程式往往較大,需要劃分成不同的檔案,那麼如何把這些檔案編譯,連線成一個統一的可執行的檔案並執行呢?

  c語言提供了編譯預處理“#include“檔名””來實現‘檔案包含”的操作,其特點是一個原始檔可以將另外一個原始檔的全部包含進來。預處理程式將#include語句所指的檔案<源程式>程式碼完全嵌於編譯程式中“#include"所在的位置,以參加正式編譯形成目的碼。

例項:

假定從鍵盤上任意輸入10個整數,按從小到大的次序排列並輸出,假定該程式用自定義函式實現。

包含三個檔案,檔名分別為file1.c,file2.c和file3.c。三個檔案的源程式如下:

file1.c

#include<stdio.h>

#include"file2.c"

#include"file3.c"

void main(){

int enter_data(int a[10]),sort_data(int a[10]),print_data(int a[10]);

int a[10];

enter_data(a);

sort_data(a);

print_data(a);

system("pause");

}

file2.c,其中enter_data(int a[])自定義函式的功能是輸入10整數,sort

-data(int a[])自定義函式的功能是對輸入的10個整數進行排序。

enter_data(int a[]){

int i;

printf("..........");

...............

}

sort_data (int a[]){

.........

.......

}

file3.c print_data (int a[]){

.....

.....

.....

}

試用行的時候一定要關閉檔案2.3的工作間,可能會造成雙重的定義 。

學資料結構的時候才發現這個超連結是真的有用,資料結構講究的是一個把程式模組化,而就是超連結實現了各個模組的重組實現。