1. 程式人生 > >C語言中extern的用法

C語言中extern的用法

1.extern修飾變數或者函式的宣告。 舉例:若a.c中需引用b.c中的變數int v,可以在a.c中宣告extern int v,然後就可以引用變數v;需要注意的是,被引用的變數v的連結屬性必須是外連結(external)的,也就是說a.c要引用到變數v,不只是取決於在a.c中宣告extern int v,還取決於變數v本身是能夠被引用到的。這裡涉及到另外一個話題—變數的作用域。能夠被其他模組以extern引用到的變數通常是全域性變數。

還有一點是,extern int v可以放在a.c中的任何地方,比如可以在a.c中函式func()定義的開頭處宣告extern int v,然後就可以引用到變數v了,只不過這樣只能在func()作用域中引用變數v(這還是變數作用域的問題,對於這一點來說,很多人使用時都心存顧慮,好像extern宣告只能用於檔案作用域似的)。