首页 > 代码库 > 2017-7-3

2017-7-3

存储类别小结

从应用的范围来分:

局部变量:

1.自动变量(auto),即动态局部变量(离开函数,值就消失)
2.静态局部变量(static)(离开函数,值仍保留)
3.寄存器变量(register)(离开函数,值就消失)
(形参可以定义为自动变量或者寄存器变量)

全局变量:

1.静态外部变量(只限本文件引用)

2.外部变量

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

从变量存在的时间来分:

静态存储(程序整个运行时间都存在):

1.静态局部变量(函数内有效)

2.静态外部变量(本文件内有效)

3.外部变量(其他文件可引用)

动态存储(调用函数时临时分配单元):

1.自动变量(本函数内有效)

2.寄存器变量(本函数内有效)

3.形式参数(本函数内有效)

从变量值存放的位置来分:

内存中静态存储区:

1.静态局部变量

2.静态外部变量(函数外部静态变量)

3.外部变量(可为其他文件引用)

内存中动态存储区(栈区):

自动变量和形式参数

cpu中的寄存器:

寄存器变量

 

 

 

 

2017-7-3