变量的存储类型
2014-06-13 00:00
148 查看
有三个地方可以用于存储变量:普通内存、运行时堆栈、硬件寄存器。在这三个地方存储的变量具有不同的特性。
变量的缺省存储类型取决于它的声明位置。
凡是在任何代码块之外声明的变量总是存储于静态内存中,也就是不属于堆栈的内存,这类变量称为静态变量。静态变量在程序运行之前创建,在程序的整个执行期间始终存在。
在代码块内部声明的变量的缺省存储类型是自动的(automatic),也就是说它存储于堆栈中,称为自动变量。对于在代码块内部声明的变量,如果给它加上关键字static,可以使它的存储类型从自动变为静态。
最后,关键字register可以用于自动变量的声明,提示它们应该存储于机器的硬件寄存器而不是内存中,这类变量称为寄存器变量。
变量的缺省存储类型取决于它的声明位置。
凡是在任何代码块之外声明的变量总是存储于静态内存中,也就是不属于堆栈的内存,这类变量称为静态变量。静态变量在程序运行之前创建,在程序的整个执行期间始终存在。
在代码块内部声明的变量的缺省存储类型是自动的(automatic),也就是说它存储于堆栈中,称为自动变量。对于在代码块内部声明的变量,如果给它加上关键字static,可以使它的存储类型从自动变为静态。
最后,关键字register可以用于自动变量的声明,提示它们应该存储于机器的硬件寄存器而不是内存中,这类变量称为寄存器变量。
相关文章推荐
- C语言变量的作用域和存储类型
- 变量的存储类型
- PHP内核探索:变量存储与类型
- C++中各种类型的变量的存储区域和作用域
- 如果从函数中返回局部变量的地址,引用或者指针的形式,则变量类型必须是静态的或者常量,即不在栈中存储
- 变量的存储类型
- 【C语言零碎知识点】变量的存储类型
- C语言--变量存储类型
- 变量的内部存储:值和类型
- 为什么在存储过程中局部变量不能申明text,ntext,image类型的,高手帮我解决一下啊?(急)
- 《C#图解教程》读书笔记3-4章——类型、存储、变量和类基础
- C语言变量存储类型auto,static,extern,static extern,register
- C语言各种类型变量存储方式
- C++中RTTI动态类型识别、静态成员、变量的四种存储方式
- 初学c#读书笔记(三)--类型、存储和变量A
- 条件编译、Unix中C函数声明、变量存储类型、程序与进程
- c语言变量的存储种类和存储器类型 (转载)
- C语言支持的四种变量存储类型
- 不同类型的变量在内存中存储的详细情况
- C 变量的存储类型