C标识符的链接(外部链接,内部链接和无链接)

来源:互联网 发布:数据选择器的用途 编辑:程序博客网 时间:2024/05/21 18:46

 C标识符链接有3种形式:外部链接的标识符,内部链接的标识符,无链接的标识符

 

外部链接的标识符:存储类标识符使用 extern 修饰,或无此类修饰符修饰(系统默认为extern )  ||可在其他源代码文件中使用

内部链接的标识符: 使用 static 修饰         || 只可在当前源代码文件中使用

无链接的标识符: 函数参数;被声明在函数内的没有extern修饰的变量(局部变量);非变量名,非函数名的标识符,如label name

 

 

 

一段经典例子,有助于区别和记忆:

 

int   func1(void);     //fuc1具有外部链接

int  a;                     //a 具有外部链接

extern int b=1;      //b具有外部链接

static int c;           // c 具有内部链接

 

 

static void  func2( int d )  // func2具有内部链接

{

     extren int a;              // a 具有外部链接

     int b =2;                  // 此b具有无链接,并将上面声明的b隐藏起来

     extern int c;          // c和上面的c一样,维持内部链接

     static int e;          //e 具有无链接

....

}

原创粉丝点击