問題
C如何在一個文件里調用另一個源文件中的函數,如題。
解決辦法
當程序大了代碼多了之后,想模塊化開發,不同文件中存一點,是很好的解決辦法,那我們如何做才能讓各個文件中的代碼協同工作呢?我們知道,main函數是程序入口,我們希望把不同的功能寫在不同的函數中,並把這些函數統一放到另外一個文件里,以便main函數顯得太長,main函數可以在用到某方法的時候調用來處理。為了實現這個步驟,我們這樣做。首先定義一個c代碼的頭文件,如function.h,在里面聲明將要實現的函數,如int add(int a,int b); ,然后新建一個源文件為function.c,在function.c的開頭#include "function.h",然后下面寫頭文件中已聲明的函數的實現。這樣寫完了之后,main函數如果要調用這個源文件中的函數,只需要在main函數的開頭部分加入#include<function.h>,如此這般,main函數調用相應函數的時候就會自動找到程序的實現部分代碼了。
代碼實現
1 # include<stdio.h> 2 3 int add(int a,int b);
1 #include<function.h> 2 3 int add(int a,int b) 4 { 5 return a+b; 6 }
1 # include<stdio.h> 2 # include<function.h> 3 4 int main() 5 { 6 int a = 1,b =2; 7 int c = add(a,b); //這里是對function.c中的add函數的調用 8 printf("c=%d",c); 9 10 return 0; 11 }
這樣就是實現了main函數調用其他文件中的函數,可以方便的進行模塊化開發。
