回覆列表
-
1 # 使用者2650670766656
-
2 # MrGhos
如果是在一個函數里寫有,int result;
那麼就是定義result變數為int型,即整型。
如果是在函式外面寫有,int result(){}
那麼就是定義result函式,這個函式的返回值是int型。
-
3 # 小福子487
在定義函式時,在函式首部的最左端加關鍵字extern,則此函式是外部函式,可供其他檔案呼叫。
C語言規定,如果在定義函式時省略extern,則預設為外部函式。
C語言對變數而言,宣告與定義的關係稍微複雜一些,在宣告部分出現的變數有兩種情況:一種是需要建立儲存空間的。
另一種是不需要建立儲存空間的。
前者稱為定義性宣告,簡稱定義;後者稱為引用性宣告。
一般為了敘述方便,把建立儲存空間的宣告稱定義,而把不需要建立儲存空間的宣告稱為宣告。
在函式中出現的對變數的宣告,除了用extern宣告的以外都是定義,在函式中對其他函式的宣告不是函式的定義。
static(靜態)來自高階計算機語言,像在VB,C#,C,C++,Java,PHP,Objective-C,JavaScript中我們可以看到static作為關鍵字和函式出現,在其他的高階計算機語言如FORTRAN、ALGOL、COBOL、BASIC、LISP、SNOBOL、PL/1、Pascal、PROLOG、Ada等語言中也是有出現的,只是有著不同的作用,
絕對不同 儲存空間不同 表現在程式碼裡就是類靜態變數時前面要加類名作為作用域。當然有,變數有兩個屬性,生存期和作用域。 定義在函式外部是全域性變數,生存期是整個程式執行到結束,作用域也是整個程式。 定義在函式內部是區域性變數,生存期是整個程式執行到結束(對於static),而作用域只是函式被呼叫的這個過程。 也就是說不能在函式外呼叫它。