ITPub博客

首页 > 应用开发 > C/C++ > 全局变量 局部变量 static autoregister extern

全局变量 局部变量 static autoregister extern

原创 C/C++ 作者:kbfrmcob 时间:2020-11-30 14:55:01 0 删除 编辑

  全局变量

  全局变量不初始化时系统默认为0;局部变量没有默认值。

  1.静态外部变量(只限本文本)(加static)

  2.外部变量(既非静态的外部变量,允许其他文件引用)

  局部变量

  自动变量,既动态局部变量(离开函数值就会消失)(自动auto)

  静态局部变量(离开函数值保留)(使用static)

  寄存器变量(离开函数值就消失)

  (形式参数可以定义为自动变量或寄存器变量)

  如果一个局部变量的值不想被释放掉,就在前面加static局部变量的值就会变为静态;

  如果一个全局变量的值不想被其他文件引用,只在其所在文件中使用就在前加static;

  static int a;//静态局部整形变量或静态外部整形变量;。

  //函数中变量不随函数结束就消失,而保留原值,空间不释放。

  auto char c;//自动变量,在函数内定义;

  //局部变量如果不专门声明为static(静态)存储类别,都自动默认为auto动态存储区中。

  register int d;//寄存器变量,在函数内定义;

  //以前版本低,运算器与内存互交流工作,导致变量使用频率过多时就会存储和拿出运算,

  //使计算变慢,所以次函数,将所用变量暂时放入CUP存储器中。

  //对于常使用的变量,减少运算时间,就将本该存放在内存中的值,暂时存放在CPU中直接运算。

  //现在系统自动识别使用频率高的自动放入CPU的寄存器中。

  extern a;//将已定义外部变量a的作用域引用至此(可跨文件引用)


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69976870/viewspace-2738140/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2020-07-14

  • 博文量
    12
  • 访问量
    17962