首页 / C++ / c++变量的存储方式
c++变量的存储方式
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了c++变量的存储方式,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1767字,纯文字阅读大概需要3分钟。
内容图文
![c++变量的存储方式](/upload/InfoBanner/zyjiaocheng/836/4dbd72695129444bae1a7c76d65bea00.jpg)
1.名字的作用域
作用域是从空间的角度来分析的,c++的作用域以花括号分隔,定于于所有{ }以外的名字具有全局作用域,定义于{ }以内的名字具有块作用域
2.变量的生命周期
生命周期是从变量存在的时间角度来分析的,生命周期可以分为静态存储期和动态存储期,这是由变量的静态存储方式和动态存储方式决定的
3.静态存储方式
静态存储方式通常是指在变量在定义时就分配固定内存并一直保持不变, 直至整个程序结束,变量的内存在程序编译阶段就已经分配好
4.动态存储方式
动态存储是指在程序执行过程中,使用变量时才分配内存, 使用完毕时立即释放
5.变量的分类
c++的变量可分为静态局部变量、全局(外部)变量、自动变量、寄存器变量
5.1静态局部变量(静态存储方式)
1)在函数体内用static声明的变量
2)定义时没有初始值将默认初始化为0
3)静态局部变量虽然生存周期为整个程序,但是其作用域仅限于定义它的函数内,也就是说在其他函数中不能使用它
4)静态局部变量初始化的时机:c语言:编译阶段分配好内存之后,就会进行初始化;c++:static局部变量在执行相关代码时才会进行初始化
5.2全局(外部)变量(静态存储方式)
1)在函数外部声明的变量称为全局变量,分为静态外部变量、非静态外部变量
2)静态全局变量:在函数体外用关键字static声明的变量,只允许被本源文件(.cpp)中的函数使用(static的隐藏作用)
3)非静态全局变量:在函数体外没有用关键字static声明的变量,允许被其它源文件中的函数使用,当其他源文件中的函数使用非静态外部变量时,需要在使用用前用关键字extern进行说明
5.3自动变量(动态存储方式)
1)自动变量意为有自动的生命周期
2)在函数体内或者在复合语句内,用关键字auto声明的变量,关键字auto可以省略
3)定义时不初始化,其值是不确定的
5.4寄存器变量(动态存储方式)
1)一般情况下,变量的值都是存储在内存中的,为提高执行效率,c/c++允许将局部变量存放到寄存器中,这种变量就称为寄存器变量
2)用关键字register声明
6.辨析静态变量、全局(外部)变量、静态局部变量
1)静态变量包含静态全局变量和静态局部变量
2)全局变量包含静态全局变量、非静态全局变量
内容总结
以上是互联网集市为您收集整理的c++变量的存储方式全部内容,希望文章能够帮你解决c++变量的存储方式所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。