c語(yǔ)言基礎(chǔ)知識(shí) extern在c語(yǔ)言中的作用?
extern在c語(yǔ)言中的作用?Extern表示外部函數(shù)或變量,例如:1。Extern void add(int x,int y)表示函數(shù)的主體不在當(dāng)前模塊中,也不在另一個(gè)模塊(文件)中。Extern
extern在c語(yǔ)言中的作用?
Extern表示外部函數(shù)或變量,例如:
1。Extern void add(int x,int y)表示函數(shù)的主體不在當(dāng)前模塊中,也不在另一個(gè)模塊(文件)中。Extern int total表示變量已在另一個(gè)模塊中定義。
通常,一些常用的枚舉和變量會(huì)寫入。H頭文件。這樣,當(dāng)需要引用時(shí),可以直接包含“頭文件名”,并調(diào)用其中的所有枚舉和變量。在大型項(xiàng)目中,只能使用extern引用其他項(xiàng)目中的函數(shù)。C文件,因?yàn)?。不能包含C文件。因此,如果你想引用函數(shù),全局變量,枚舉等在其他。C文件,只能使用extern。
c語(yǔ)言中的extern怎么用?
Extern是C中的外部聲明,因?yàn)镃在使用它之前聲明。當(dāng)要調(diào)用的變量或函數(shù)不在模塊中時(shí),可以使用外部聲明。使用外部聲明時(shí)應(yīng)特別注意,因?yàn)樗皇且粋€(gè)聲明,而不是實(shí)體。當(dāng)聲明與實(shí)體不匹配時(shí),編譯器將不會(huì)處理它,并且鏈接后可能會(huì)發(fā)生錯(cuò)誤。例如,您的實(shí)體是intsample(intx),您將其聲明為externalintsample(void),因此我不喜歡這種聲明方式。特別是在多人合作的項(xiàng)目中,這種方法的結(jié)果很難調(diào)試。即使有人編寫了提供給您的內(nèi)容,當(dāng)他更改函數(shù)或變量的類型和參數(shù)時(shí),也常常忘記修改提供給您的語(yǔ)句。
extern的另一個(gè)功能是,當(dāng)您將C與C混合使用時(shí),例如,如果您想在C中使用C,您必須告訴編譯器您的代碼使用C,并且您需要使用C編譯器來(lái)編譯。您可以使用extern“C”{…}否則,編譯中會(huì)出現(xiàn)問(wèn)題