变量存储类型

一、auto

变量声明一般形式

<存储类型> <数据类型> <变量名>

 在函数体的某程序段内说明auto存储类型的变量时可以省略关键字auto。

•auto说明的变量只能在某个程序范围内使用,通常在函数体内或函数中的复合语句里。(默认是随机值),不能是全局变量。

二、register

register称为寄存器型,用于定义局部变量,表示该变量尽可能存储在CPU的寄存器中,提高访问速度,初始值随机;寄存器是CPU内部的高速存储单元,比内存访问速度快很大,但数量有限,因此如申请不到就使用一般内存,同auto;

•不能用“&”来获取register变量的地址。

三、static

static变量称为静态存储类型的变量

•定义全局变量或局部变量,表示变量在程序运行期间一直存在

•默认初始值为0

•局部变量使用static修饰,有以下特点:

1.在内存中以固定地址存放的,而不是以堆栈方式存放

2.只要程序没结束,就不会随着说明它的程序段的结束而消失,它下次再调用该函数,该存储类型的变量不再重新说明,而且还保留上次调用存入的数值。

static修饰的全部变量,其它文件无法使用

四、extern

1.extern称为外部参照引用型,使用extern说明的变量是想引用在其它文件中函数体外部说明的变量。编译器在编译时不会给该变量分配内存,而是在链接阶段将其与实际的定义进行关联

2.声明外部变量

当你希望在一个文件中使用另一个文件中定义的全局变量时,需要在当前文件中使用extern进行变量的声明ü在当前文件中,它只是一个未定义的外部变量引用,实际定义在其它文件中

相关推荐

  1. 数据类型变量

    2024-03-23 12:22:01       13 阅读
  2. [Rust] 打印变量类型

    2024-03-23 12:22:01       14 阅读
  3. Go 之获取变量类型

    2024-03-23 12:22:01       13 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-23 12:22:01       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-23 12:22:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-23 12:22:01       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-23 12:22:01       20 阅读

热门阅读

  1. 【数据库】MySQL索引事务

    2024-03-23 12:22:01       16 阅读
  2. 【复杂网络建模】——通过python的XGI库构建超图

    2024-03-23 12:22:01       17 阅读
  3. Day 29 回溯05

    2024-03-23 12:22:01       18 阅读
  4. 探索MySQL中的SQL_MODE数据模式

    2024-03-23 12:22:01       18 阅读
  5. vue中如何用一个数组减去另一个数组

    2024-03-23 12:22:01       17 阅读
  6. node和npm yarn包管理工具

    2024-03-23 12:22:01       21 阅读
  7. npm 常用命令详解

    2024-03-23 12:22:01       21 阅读
  8. SAP-FI配置与业务解析之代发(客户)销售作业

    2024-03-23 12:22:01       19 阅读