链接属性

         2018/12/1星期六11:28
         
                  **链接属性**
   a)external(外部的)
   -多个文件中声明的同名标识符表示同一个实体。
   //只有具备文件作用域才可以拥有external或internal属性,也就是说可以用于跨文件访问。
   b)internal(内部的)
   -单个文件中声明的同名标识符表示同一个实体。
   c)none(无)
   -声明的同名标识符被当做独立不同的实体。


   *有关extern,external说明的全局变量为外部变量,并且external只能修饰全局变量,格式:external 类型 变量名。
   例如:
   int main(void)
   {
       fuc();
       count++;                     //由于编译器是从上往下看的
       此处出现了未定义的count,此时编译器则会报错,因此我们
       需要在count++之前,加上extern int count;用于告诉编译器
       先不要报错,继续往下看,这个count在某个地方有定义。
   }
   int count;
   void func{
      count++;
      return 0;
   }

STATIC的作用:1)使用static可以将external转为internal属性,(当我们想保护一个标识符不被改变或访问的时候,就可以用static,使得某个标识符只有在这个文件当中才可以被访问),用于限制函数在某个文件中被调用。
2)当用作静态变量的时候,表示该标识符只被初始化一次,并且与局部变量不同的是,它的内存空间仍然存在不被释放,(例如求和的时候先初始化sum=0,然后继续累加)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值