社区
C++ 语言
帖子详情
堆存储还是全局变量存储?
taoqilin
2013-03-18 02:07:30
int *p1 = new int(0);我们知道new运算符代表向堆申请一块存储空间,那么new int(0)是存储在堆里。但是p1这个指针是个全局变量,那么p1是存储在哪里?是全局变量区吗?
int a = new int(0);这里的a是个引用吧,那么存储在哪里?
...全文
192
2
打赏
收藏
堆存储还是全局变量存储?
int *p1 = new int(0);我们知道new运算符代表向堆申请一块存储空间,那么new int(0)是存储在堆里。但是p1这个指针是个全局变量,那么p1是存储在哪里?是全局变量区吗? int a = new int(0);这里的a是个引用吧,那么存储在哪里?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
黑娃
2013-03-18
打赏
举报
回复
1、全局变量存放在静态区,new出来的在堆里,局部变量在栈里 2、int a = new int(0);是笔误吗?应该是 int *a = new int(0);
starytx
2013-03-18
打赏
举报
回复
指针和其指向的对象不是一回事; int a = new int(0); 错误的写法,new返回的是一个int空间的地址(指针),不能转化为int类型
MySQL 声明变量及
存储
过程分析
声明变量 设置
全局变量
set @a=’一个新变量’; 在函数和储存过程中使用的变量declear declear a int unsigned default 1; 这种变量需要设置变量类型 而且只存在在 begin..end 这段之内 select .. into.. 直接将表内内容赋值到指定变量当中 select name,bid into @a,@b from bank limit 1; 要注意一点就是变量名不能和字段名一致
存储
过程
存储
过程将一段通用的操作封装在一起 这样再不同平台都可以公用了 储存过程没有返回值,而且不能sql语句调用,只能是call调用,
华为、中兴C.C++笔试面试知识点
华为、中兴C.C++笔试面试知识点 计算机面试题目,C语言面试题大汇总之华为面试题 0、static
全局变量
与普通的
全局变量
有什么区别?static局部变量和普通局部变量有什么区别?static函数与普通函数有什么区别? 1、extern
存储
类别
全局变量
的默认方式,当在一个文件中要引用另一个文件中的
全局变量
或在
全局变量
定义之前要引用它时,可用extern作说明,相当于扩大
全局变量
的作用域。 2、静态(static)
存储
类别 它仅能在本文件中引用,即使在其它文件中用extern说明也不能使用。相当于限制了
全局变量
的作用域范围。 2.Heap与stack的差别。 Heap是
堆
,stack是栈。Stack的空间由操作系统自动分配/释放,Heap上的空间手动分配/释放。Stack空间有限,Heap是很大的自由
存储
区C中的malloc函数分配的内存空间即在
堆
上,C++中对应的是new操作符。程序在编译期对变量
全局变量
和局部变量在
堆
和栈的区别
总结起来,
全局变量
和局部变量在
堆
和栈的区别主要在于
存储
位置和生命周期。而局部变量
存储
在栈中,只在其所属的函数执行期间存在。栈是一种先进后出(Last-In-First-Out,LIFO)的数据结构,用于
存储
函数调用时的临时变量、函数的参数值等。局部变量的生命周期与其所属的函数相关。
全局变量
存储
在静态
存储
区,也就是程序的全局数据区或者称为全局内存。
全局变量
的生命周期从程序开始运行到程序结束,它的值在整个程序的执行过程中都保持不变。
全局变量
和局部变量在
堆
和栈的区别主要体现在它们的
存储
位置和生命周期上。
全局变量
的
存储
类型
全局变量
的
存储
类型 在函数外部定义的变量是
全局变量
,它的作用域是从变量的定义点开始,到本程序文件的末尾。
全局变量
分为两种:1.extern声明的变量 2.static声明的变量。 当未对
全局变量
指定
存储
类别时,隐含为extern类别。用extern和static声明的
全局变量
都是静态
存储
方式(存放在静态
存储
区),都是在编译时分配内存的。1.extern声明的
全局变量
局部变量与
全局变量
及其
存储
方式
局部变量与
全局变量
及其
存储
方式 1、变量及其
存储
的分类 从变量的作用域的角度观察,变量可以分为
全局变量
和局部变量;变量的
存储
分为静态
存储
方式和动态
存储
方式。 内存中供用户使用的
存储
空间可分为程序区、静态存
存储
区和动态
存储
区三部分
全局变量
全部存放在静态
存储
区中,程序开始执行时给
全局变量
分配
存储
空间,程序执行完毕就释放。 在动态
存储
区存放以下数据: ①函数形式参数。在调用函数时给形参分配
存储
空间。 ②函数中定义的没有用关键字static声明的变量,即自动变量 ③函数调用时的现场保护和返回地址等。 这里是
C++ 语言
65,211
社区成员
250,518
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章