發(fā)布時(shí)間:2024年11月06日 14:25:46分享人:意尐女生來源:互聯(lián)網(wǎng)6
內(nèi)部函數(shù)和外部函數(shù)
函數(shù)一旦定義后就可被其它函數(shù)調(diào)用。 但當(dāng)一個(gè)源程序由多個(gè)源文件組成時(shí), 在一個(gè)源文件中定義的函數(shù)能否被其它源文件中的函數(shù)調(diào)用呢?為此,C語言又把函數(shù)分為兩類:
一、內(nèi)部函數(shù)
如果在一個(gè)源文件中定義的函數(shù)只能被本文件中的函數(shù)調(diào)用,而不能被同一源程序其它文件中的函數(shù)調(diào)用, 這種函數(shù)稱為內(nèi)部函
數(shù)。定義內(nèi)部函數(shù)的一般形式是: static 類型說明符 函數(shù)名(形參表) 例如:
static int f(int a,int b) 內(nèi)部函數(shù)也稱為靜態(tài)函數(shù)。但此處靜態(tài)static 的含義已不是指存儲(chǔ)方式,而是指對(duì)函數(shù)的調(diào)用范圍只局限于本文件。 因此在不同的源文件中定義同名的靜態(tài)函數(shù)不會(huì)引起混淆。
二、外部函數(shù)
外部函數(shù)在整個(gè)源程序中都有效,其定義的一般形式為: extern 類型說明符 函數(shù)名(形參表) 例如:
extern int f(int a,int b)如在函數(shù)定義中沒有說明extern或static則隱含為extern。在一個(gè)源文件的函數(shù)中調(diào)用其它源文件中定義的外部函數(shù)時(shí),應(yīng) 用extern說明被調(diào)函數(shù)為外部函數(shù)。例如:
F1.C (源文件一)
main()
{
extern int f1(int i); /*外部函數(shù)說明,表示f1函
數(shù)在其它源文件中*/
……
}
F2.C (源文件二)
extern int f1(int i); /*外部函數(shù)定義*/

{
……
}
愛華網(wǎng)本文地址 » http://www.klfzs.com/a/25101011/101652.html
更多閱讀

Old EnglishSeæfterra ȜēolaSolmōnaþHreþmōnaþĒastermō

求數(shù)組長度的方法有兩種 第一種是intarray[n];strlen(array);//這個(gè)方法可以求得字符串?dāng)?shù)組的長度char sizeof(array);sizeof(array);//可以求的數(shù)組的長度

一、新的C語言:一切都源于FORTRAN(restrict的歷史)http://www.chinaunix.net/ 作者:phoneix 發(fā)表于:2007-06-17 09:18:45此篇文章摘取于即將登載于《Dr.Dobb's 軟件研發(fā)》第三期(2003年10月)的《The New C:一切源于FORTRAN》,文章主要是介

在用c語言編寫輸入語句的時(shí)候常用到scanf函數(shù),初學(xué)者在剛用scanf函數(shù)輸入時(shí),經(jīng)常會(huì)遇到各種各樣的輸入錯(cuò)誤,最重要的是一定要記住scanf函數(shù)的輸入格式,scanf函數(shù)里包含了哪些東西,輸入的時(shí)候就必須有哪些東西,比如:scanf("%c%c%c"),那么輸入

內(nèi)部函數(shù)和外部函數(shù)函數(shù)一旦定義后就可被其它函數(shù)調(diào)用。 但當(dāng)一個(gè)源程序由多個(gè)源文件組成時(shí), 在一個(gè)源文件中定義的函數(shù)能否被其它源文件中的函數(shù)調(diào)用呢?為此,C語言又把函數(shù)分為兩類:一、內(nèi)部函數(shù)如果在一個(gè)源文件中定義的函數(shù)只能被本