当前位置: 首页 > news >正文

做网站的公司哪家强博客是哪个软件

做网站的公司哪家强,博客是哪个软件,网站建设 你真的懂吗,公司做一个网站多少钱内存管理 C与C的内存分布C语言中动态内存管理方式回顾C内存管理的方式 C与C的内存分布 我们学习C语言时就知道,储存不同的变量计算机会相应分配不同区块的内存。那为什么要把内存化为不同的区域呢?实质上是为了方便管理 下面我们来看看下面一道例题&…

内存管理

  • C与C++的内存分布
  • C语言中动态内存管理方式回顾
  • C++内存管理的方式

C与C++的内存分布

我们学习C语言时就知道,储存不同的变量计算机会相应分配不同区块的内存。那为什么要把内存化为不同的区域呢?实质上是为了方便管理
下面我们来看看下面一道例题,看看C语言阶段的内存管理学习的怎么样?

int globalVar = 1;
static int staticGlobalVar = 1;
void Test()
{
static int staticVar = 1;
int localVar = 1;
int num1[10] = { 1, 2, 3, 4 };
char char2[] = "abcd";
const char* pChar3 = "abcd";
int* ptr1 = (int*)malloc(sizeof(int) * 4);
int* ptr2 = (int*)calloc(4, sizeof(int));
int* ptr3 = (int*)realloc(ptr2, sizeof(int) * 4);
free(ptr1);
free(ptr3);
}

题目
选项: A.栈 B.堆 C.数据段(静态区) D.代码段(常量区)
globalVar在哪里?____ staticGlobalVar在哪里?____
staticVar在哪里?____ localVar在哪里?____
num1 在哪里?____

char2在哪里?____ *char2在哪里?___ pChar3在哪里?____
*pChar3在哪里?____ ptr1在哪里?____ *ptr1在哪里?____

要解决这个问题,我们不妨先来回顾一下C\C++的内存分布:
在这里插入图片描述
栈:向下增长;且储存局部变量、函数的参数、返回值等等。
堆:向上生长;主要是动态开辟的内存,用完需要用户自己销毁的空间,因此这一块空间需要我们重点关注
数据段(静态区):主要储存全局变量与静态变量
代码段(常量区):主要储存可执行代码与常量。
有了这样的认识那题目自然也就会做了
在这里插入图片描述
因此题目答案:CCCAA /AAADAB

C语言中动态内存管理方式回顾

1.malloc/calloc/realloc的区别
(1) malloc与realloc、calloc的参数不同
(2) malloc只能用于开辟空间,calloc与realloc可用于开辟空间与扩容
(3) calloc除了开辟空间与扩容还有初始化的作用

C++内存管理的方式

C语言开辟空间的函数在C++中依然可以适用,但C++也有自己分配空间的函数:new与delete

语法规则:
需要开辟一个int大小的空间
int* p = new int;
如需要开辟存十个int类型的数组:
int* p1 = new int[10];
销毁空间
delete p;
delete[] p1;

我们发现相比于C语言开辟空间变得更加简洁了,那他的好处只有这一个吗?
不,除了变得更简洁之外,new还有诸多好处
1.new还能很好地控制初始化。如

int* p2 =new int(10);//表示new一个int控件将该控件初始化为10
int* p3 =new int[10]{1,2,3,4,5};//表示new十个int空间并将前五个初始化为大括号内的值

在这里插入图片描述
既然new能控制初始化,自定义类型该怎么处理呢?
2.new对于自定义类型会开空间后调用其构造函数;与此同时delete也会调用相应的析构函数
例如:创建链表节点:
C语言实现如下:
在这里插入图片描述
C++实现如下:在这里插入图片描述
以上的对比大家是不是对new与delete有了新的认知,它确实是十分的方便,因为它与类和对象的特点进行了有机的结合,以后我们开辟空间首选肯定就为new了,
3.new开辟失败后,不需要我们像malloc那样手动检查,它能够直接抛异常

http://www.zhongyajixie.com/news/2776.html

相关文章:

  • 做镜像网站违法批量查询权重
  • 推广普通话作文300字网络营销企业网站优化
  • 能看网站的浏览器网络营销网站建设
  • wordpress 总提示更新站长工具seo综合查询降级
  • 西安信息网站建设西安seo哪家好
  • 手机网站的页面大小常见的关键词
  • 家私网站栏目和功能需求策划高端企业网站模板
  • 香港购物网站排名网站推广优化方法
  • 软件编程和网站开发差别seo自动排名软件
  • 网站做301顶级域名需要绑定seo网站设计
  • pis粉丝做的网站小红书软文推广
  • 网站制作昆山南宁网站建设网站推广
  • 给政府做网站推广游戏怎么拉人最快
  • 手机怎么做弹幕小视频网站怎么做免费的网站推广
  • 商务网站开发技术如何快速推广网站
  • 北京网站制作报价重庆网站seo诊断
  • 网站内链是什么 怎么做图片外链上传网站
  • 微信做淘宝客 网站打不开了郑州seo技术代理
  • 专做餐饮的网站模板自助建站
  • 做海报的素材网站it培训机构哪个好
  • 银川制作网站百度网盘电脑版登录入口
  • 做网站设计的论文中摘要怎么写郑州网站优化外包顾问
  • 怎么做局域网asp网站网络营销工资一般多少
  • 淳安县住房和城乡建设局网站首页网络营销的主要手段
  • 赣州网站建设优化服务广州网站推广
  • 做网站保存什么格式最好购买seo关键词排名优化官网
  • 鸿蒙开发语言苏州优化收费
  • wordpress 过滤 特色图像seo外包服务专家
  • 天津网站建设制作排名google推广公司哪家好
  • 做翻译小说网站赚钱吗免费com域名注册网站