C++中new出来的静态变量在内存的什么区

new出来的的变量在堆区,但静态变量放在全局区。
如果在函数内部有这样一条语句 static int *val = new int[10] ;
那这些值都存在什么地方? 难道是val在全局区,但new int[10]出来的内存却在堆区?

如果这条语句在函数体外面又是什么情况呢?
全部评论
static表示val指针存放在.data节(也就是全局区),new int〔10〕在堆区,只是val存放的是new int[10]的首地址值,
点赞 回复 分享
发布于 2017-12-02 05:12
二楼解释的很对,你可以了解一下
点赞 回复 分享
发布于 2017-12-03 17:19
楼上说得对,这句话写在函数内外都一样。
点赞 回复 分享
发布于 2017-12-02 09:07
我没见过这样写的代码,你在哪见的,还是自己想的
点赞 回复 分享
发布于 2017-12-02 03:08

相关推荐

🎓学历背景:双非土木硕👨‍💻意向职位:AI应用开发大佬们可以帮我看看简历吗,秋招至今0offer
秋招结束再玩瓦:今年科班都不好找哇……你可以试试交叉岗,比如制造业国企的一些开发算法,或者互联网的边缘岗,it技术支持,运维这些
我的简历长这样
点赞 评论 收藏
分享
10-29 15:51
嘉应学院 Java
后端转测开第一人:你把简历的学历改成北京交通大学 去海投1000份发现基本还是没面试
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务