1樓:天雲一號
函式定義就是規定函式的格式與功能。
函式宣告就是在函式呼叫之前進行的一種說明。
下面舉例說明兩者的語法格式:
#include
int fun(int a, int b); // 函式的宣告void main()
// 下面的fun函式就是函式的定義
int fun(int a, int b)注:如果被調函式(上例中為fun函式)寫在呼叫處之前,可以不宣告(本例是現在呼叫處 (c = fun(x+y);)之後)。
2樓:匿名使用者
函式原型:返回型別 函式名(引數型別列表);
比如int max(int*, int);
函式的定義:把函式原型的最後面的分號換成函式體。
比如:int max(int *data, int count)
3樓:小豬的知識庫
函式返回值 函式名(引數);
這就是函式宣告。例:兩個數求和函式的宣告:
int sum(int a,int b);
4樓:匿名使用者
函式返回值 函式名(引數型別 引數名);
如 int a( int b)
或void b(char c)
5樓:匿名使用者
例如int name (引數性質 引數)
c語言中使用者自定義函式的格式是什麼?
6樓:匿名使用者
格式:函式返回型別 函式名(引數列表)
例如:int test(int value)上面示例定義了一個名為test的函式,其返回值為int型,引數為int型,返回值為引數與10之和。
注:函式型別為void時,不可有return語句。
7樓:匿名使用者
返回值型別 函式名(參數列)
8樓:匿名使用者
返回值型別 函式名(參數列){函式體}
9樓:匿名使用者
自定義函式
的方法:vc中,定義函式分為兩步:
i.宣告:在main函式開頭定義變數的位置,回宣告函式:定義上述答函式宣告是:
int add(int a,int b);
注意分號,宣告前部不能有執行語句;
ii.把下面的函式定義部分放在main函式外部int add(int a,int b)
推薦放在main的後花括號後面,注意此處的int add(int a,int b)後面並沒有分號。
vc裡面,返回型別是int的函式可以省略宣告部分
10樓:匿名使用者
定義無參函式的一般格式:
《函式名》()
//自定義函式體
定義有參函式型別的一般格式:
《函式名》(《型別識別符號》 《,《型別識別符號》 arg2,……》)//函式體定義
在c語言中,函式定義跟函式宣告有什麼區別有什麼不同之出?
11樓:
int fun(int a, int b);
函式定義:
int fun(int a,int b)宣告就象是定義的頭部,比較簡略,函式是用來呼叫的,如果函式定義部寫到呼叫的位置後面,執行到呼叫位置,
12樓:匿名使用者
定義是實現功能的**,本質是需要編譯器編譯成二進位制**的。
函式宣告對函式的描述,用於告訴編譯器本檔案中提到的這個函式應該按照宣告的形式去呼叫。
13樓:
1.函式定義可以定義在標頭檔案中,注意在其之前新增extern。
2.函式定義,也可以定義在程式首部,只要在函式定義前就可以了。
3.void fun(void);//宣告4.void fun(void)//定義
5.有時也會有人選擇,不寫函式宣告,直接再呼叫函式前定義函式。
14樓:鬼扯石室
函式宣告只是向呼叫函式(例如main)函式說:有這個函式在,需要呼叫它
所以只需要給出函式原型即可,譬如:int func(int a);
函式定義則是要將這個函式具體的函式體實現出來,就需要寫出一個完整的函式
譬如:int func(int a)
有時候我們直接將完整函式寫到呼叫函式(例如main)中,就免去了單獨的函式宣告。
如果希望將函式體寫在呼叫函式之外,就需要在呼叫函式中專門做函式宣告瞭。
15樓:扶桑看天
宣告嘛表示有這麼個函式了,定義就是具體實現了,舉個例子:
函式宣告:
int fun(int a, int b);
函式定義:
int fun(int a,int b)宣告就象是定義的頭部,比較簡略,函式是用來呼叫的,如果函式定義部寫到呼叫的位置後面,執行到呼叫位置,後面根本沒執行就找不到了,當然報錯了,就要在前面加宣告,表示有這個函式,反之先寫函式體,後呼叫宣告就用不了,不在同一原始檔,道理也是如此,寫的夠簡單明白的了吧,累死我了
c語言中函式實現的.c檔案include函式宣告的,h檔案有什麼作用?
16樓:匿名使用者
標頭檔案是給編譯器用的
編譯器在編譯c檔案的時候,需要對其中的函式呼叫做檢查,以便知道函式引數個數、型別、返回值等是否正確。編譯的順序是按照**書寫從前到後進行的,如果你的函式寫在前面,則編譯到呼叫這個函式的語句的時候,由於已經認識了這個函式,所以也沒問題,但是,有時候我們會把函式的實現寫在呼叫語句的後面,這時候就需要在前面書寫個函式的宣告,告訴編譯器我後邊有個某某型別的函式。。如果把大量的宣告寫在 .
c **裡,c檔案也會比較亂,所以用 .h 檔案來儲存這些宣告,.c 檔案要用這些宣告的時候,只需要 #include 即可,如果是系統函式,用 #include ,如果是自定義標頭檔案,則用 #include "***.
h" 。
你的**中 a.c 沒有必要包含 a.h ,因為並沒有呼叫該函式而是該函式的實現,但 main 函式所在的 main.c 用到了 add ,所以必須包含 a.h
17樓:硬虎虎
c語言在演繹的時候,會首先將include的檔案的內容複製到 #include "...h" 這裡(可以這麼理解)。所以上面的主程式其實就是:
#include
int add(int x, int y);
int add(int x, int y)int main()
引入標頭檔案,就是為了**的複用和簡潔的描述。
.h主要用於函式的宣告,.c主要是實現的程式體和主程式。
18樓:澤澤么兒
是一樣的都是為了直接呼叫 int add(int x, int y);
c語言中使用者自定義函式的格式是什麼
格式 函式返回型別 函式名 引數列表 例如 int test int value 上面示例定義了一個名為test的函式,其返回值為int型,引數為int型,返回值為引數與10之和。注 函式型別為void時,不可有return語句。返回值型別 函式名 參數列 返回值型別 函式名 參數列 函式體 來個d...
C語言中函式宣告的位置有幾種,在C語言中,函式定義跟函式宣告有什麼區別有什麼不同之出?
1.把子函式放主函式main函式外並且是之前定義,無需宣告。2.如果你把子函式放到main函式外,則必須在定義的時候先宣告。3.如果把 子函式放在main函式中就不需要提前宣告瞭。首先,你提的問題就有問題。c是一門程式語言,函式是在源 裡面宣告的。所以你該問在c語言編寫的源 裡,函式宣告的位置有幾種...
c語言中函式定義中的冒號是什麼意思
1 表示機來構內位域的定義 源即該變數佔幾個baibit空間 如下 duzhi typedef struct 2 建構函式後面的冒號 dao起分割作用,是類給成員變數賦值的方法,初始化列表,更適用於成員變數的常量const型。如下 struct 3 public 和private 後面的冒號,表示後...