首页 > 代码库 > C语言存储模型
C语言存储模型
- 描述方法(三个方面)
作用域
|
代码块、函数原型
|
文件作用域
|
|
链接类型
|
外部链接
|
内部链接
|
|
空链接
|
|
存储时期
|
静态存储时期
|
动态存储时期
|
- 变量类型
变量存储类型
|
|||
作用域
|
链接类型
|
存储时期
|
C语言存储模型(类)
|
文件
|
外部
|
静态
|
具有外部链接的静态
|
内部(static)
|
具有内部链接的静态
|
||
代码块
|
无链接
|
静态(static)
|
空链接静态变量
|
动态
|
自动变量
|
||
寄存器(性质与自动变量类似,存储在寄存器中)
|
寄存器
|
注:
- 具有外部链接的在其他文件使用前必须以exturn声明
- 具有静态存储期的变量必须使用常量初始化(编译阶段获得值)
全局变量要慎用,原因有两个:
- 命名重复
- 其他函数可能违背意图将其值改变
程序通常把内存分为3个部分:
- 静态变量存储
- 自动变量存储
- 动态分配变量的存储
参考文献:
[1].Prata S. C Primer Plus, 6th Edition[J]. 2014
C语言存储模型
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。