广州网站建设培训学校seo优化外包

news/2025/10/6 14:18:45/文章来源:
广州网站建设培训学校,seo优化外包,哪做网站比较便宜,wordpress 采集英文插件了解动态内存函数 前言#xff1a;一、malloc函数二、calloc函数三、realloc函数四、free函数 前言#xff1a; 在C语言中#xff0c;动态内存函数是块重要的知识点。以往#xff0c;我们开辟空间都是固定得#xff0c;数组编译结束后就不能继续给它开辟空间了#xff0… 了解动态内存函数 前言一、malloc函数二、calloc函数三、realloc函数四、free函数 前言 在C语言中动态内存函数是块重要的知识点。以往我们开辟空间都是固定得数组编译结束后就不能继续给它开辟空间了开辟的空间满了就不能在开辟空间了就是不能在添加数据了。学习本文章我们就可以解决这个问题向内存申请空间满啦可以继续申请空间。 一、malloc函数 需要头文件——stdlib.h 浏览器直接翻译 malloc函数动态内存开辟的函数 void* malloc(size_t size);功能 这个函数向内存申请一个连续可用的空间并返回指向这块空间的指针。 如果开辟成功则返回一个指向开辟好空间的指针。如果开辟失败则返回一个NULL指针因此malloc的返回值一定要做检查。返回值的类型是void* 所以malloc函数并不知道开辟空间的类型具体在使用的时候由使用者自己决定。如果size为0malloc的行为是标准还是未定义的由编译器决定。malloc申请的空间当程序退出时要还给操作系统当程序不退出动态申请的内存不会主动释放需要用free函数来释放。 malloc申请的内存空间 malloc申请到空间后直接返回这个空间的首地址不会初始化空间的内容。 举个例子 #include stdio.h #include stdlib.h int main() { //变长数组的知识点vs不能用gcc可以用//int num 0;//scanf(%d, num);//int arr[num] { 0 };int* ptr NULL;ptr (int*)malloc(40);if (ptr NULL)//判断ptr指针是否为空{perror(malloc);exit; }else{int i 0;for (i 0; i 10; i)//给开辟的空间赋值ptr[i] i 1;}free(ptr);//释放ptr指向的空间ptr NULL;//让ptr指向空return 0; }二、calloc函数 需要头文件——stdlib.h 浏览器直接翻译 calloc函数动态内存分配函数 void* calloc(size_t num, size_t size);功能 函数的功能是为num个大小为size元素开辟一块空间并且把空间的每一个字节初始化为0.与malloc函数的区别只在于calloc函数会在返回地址之前把申请空间的每一个字节初始化为0. 举个例子 #include stdio.h #include stdlib.h int main() {int* p (int*)calloc( 10,sizeof(int));if (p NULL)//成立开辟失败{perror(calloc);exit;}free(p);p NULL;return 0; }p指向的地址 三、realloc函数 需要头文件——stdlib.h 浏览器直接翻译 realloc函数动态内存管理更加灵活 有时候我们发现过去申请的空间小了有时候我们会觉得过去申请的空间过大为了合理使用内存我们一定要对内存的大小做灵活的调整。realloc函数可以做到对动态开辟内存大小进行调整。 void* realloc(void* ptr, size_t size);功能 ptr是要调整的内存地址。size是调整后的新大小。返回值为调整之后的内存起始位置。这个函数在调整原空间大小的基础上还会将原来的数据移到新的空间。 注意 realloc调整内存空间有两种情况。 情况1原有空间之后有足够大的空间原地扩容。 当是情况1的时候要扩展内存就直接在原有内存之后直接追加空间原来空间的数据不发生改变。 情况2原有空间后面没有足够大的空间异地扩容。 当是情况2的时候原有空间后面没有足够多的空间时扩展的方法是在堆空间上另外找一个合适大小的连续空间来使用。这样函数返回的是一个新的内存地址。 所以我们在使用realloc函数的时候一定要注意 1、开辟新的空间。 2、 会将旧的空间数据拷贝到新的空间。 3、释放旧的空间。 4、返回新空间的起始地址。 举个例子 #include stdio.h #include stdlib.h int main() {int* ptr (int*) malloc( 100 );if (ptr ! NULL){ //可以使用这个空间}else{perror(malloc);exit;}//扩展空间int* p (int*)realloc(ptr, 1000);//可能增容失败if (p ! NULL){//增容成功ptr p;//p指向的空间交给ptr去维护}free(ptr);//把开辟早堆上的空间释放掉ptr NULL;return 0; }四、free函数 需要头文件——stdlib.h 浏览器直接翻译 free函数释放动态开辟的内存 void* free(void* ptr);功能 如果参数ptr指向的那个空间不是动态开辟的那free函数的行为是未定义的。如果参数ptr是NULL指针则函数什么事都不做。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/929396.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[LUCKY」在Windows下使用STUN穿透实现Minecraft联机并设置SRV记录

[LUCKY」在Windows下使用STUN穿透实现Minecraft联机并设置SRV记录2024.02.18 本教程目标 在无公网环境低成本的实现较为稳定的 Minecraft Java版联机(服务器) 目前常见的联机(服务器)方法及其问题(针对好友联机和小…

系统管理员的日常困境与幽默自嘲

这篇文章通过Reddit论坛上系统管理员们的真实讨论,展现了IT专业人员面对"请联系系统管理员"这类提示时的无奈与幽默,揭示了技术支持工作中的常见困境和职业共鸣。这篇文章通过Reddit论坛上系统管理员们的真…

46设计网站官网网站开发项目团队人员

前言 如果你被hutool坑过、被fastjson坑过,nicetool帮你解脱! 如果你想用稳定、Spring原生的工具类,nicetool已帮你封装! nicetool不生产工具,只是JDK和Spring的封装侠! 介绍 nicetool:超好…

实用指南:Docker 在 AI 开发中的实践:GPU 支持与深度学习环境的容器化

实用指南:Docker 在 AI 开发中的实践:GPU 支持与深度学习环境的容器化pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: …

电子商务网站类型培训学校 网站费用

处理域名连接nacos读取配置异常 1 项目启动报错2 问题处理3 刷新依赖重启问题解决 1 项目启动报错 使用ip可以正在启动,但是使用域名报下面的错误 2024-06-15 17:37:22.981 ERROR 29268 --- [ main] c.a.c.n.c.NacosPropertySourceBuilder : parse …

视频素材网站建设有没有专门做印刷图的网站

前言 对于使用jmeter工具完成接口测试的测试工程师而言。在工作中,或者在面试中,都会遇到一个问题。 CSV文档做了一大笔测试数据后,怎么去校验这个结果呢? 现在大部分测试工程师可能都是通过人工的方法去查看结果,十几…

AI数据标注平台获融资挑战行业巨头

一家AI数据平台公司获得1300万美元融资,专注于为开发者提供数据标注、管理和模型评估工具,帮助构建高质量AI训练数据集,客户包括多家知名科技企业。AI数据平台获得1300万美元融资挑战行业竞争对手 人工智能数据平台…

详细介绍:如何用 pnpm patch 给 element-plus 打补丁修复线上 bug(以 2.4.4 修复 PR#15197 为例)

详细介绍:如何用 pnpm patch 给 element-plus 打补丁修复线上 bug(以 2.4.4 修复 PR#15197 为例)pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block…

广州网站ui设计贵港免费的网站建设

我是个前端菜鸡,最近准备学习一点前端知识,先从Bootstrap5开始,毕竟早期Bootstrap还是比较火的。推出的Bootstrap5不再和jQery强制绑定,这里直接按照官方文档上来操作,打包工具我们选择Webpack。 一 前期准备 前期准备…

网站开发工具最好用做网站的工作量

https://blog.csdn.net/layman1024/article/details/72628379

Go 为何天生适合云原生? - 指南

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

ARC 207

目前打得最好的一集。 A 考虑如果 \(\le 0\) 还会减一,那么花掉的钱就是,\(1+2+\cdots +(n-1)\)。现在的问题就是,可能少花掉一些。 最多花掉 \(\mathcal{O}(n^2)\),所以考虑计数这个。发现其实,花掉的是 \(\sum_…

半年小结 Vol4. 跌跌撞撞开启 PhD 生涯

最近一直没能抽出时间总结于是半年总结一直拖拖拖,距离上次半年复盘已过了九个月,这九个月发生了很多:职业发展上经历了 idea 、实现、回片测试完整走完第一个加速器流片工作,切身体会了流片的血与泪; 第一次离开…

资源网站很难做做长图文网站

在c++中,一个文件调用另外一个文件最直接最快捷的方式就是#incldue<头文件>的使用,那么在元数据描述性语言QML中,如何从一个界面描述调用另外一个界面描述,一个.qml文件调用另外一个.qml呢?QML虽然有个import,但是用法可以说完全不同于#include。 引用方法1:直接…

大连可以做网站的公司北京公司注册最新政策

用Jsp Servlet和Jquery以及SQLServer实现商品管理系统。 采用MVC三层架构进行此程序的开发。 功能分析&#xff1a; 1.登录功能 2.查询和联合查询商品 3.增加商品 4.删除商品 效果演示 登录页面 查询页面 添加商品 点击删除 实现商品管理系统需要数据库和程序两部分。…

兰州网站建设推荐q479185700上快网站没排名怎么办

系列文章目录 C技能系列 Linux通信架构系列 C高性能优化编程系列 深入理解软件架构设计系列 高级C并发线程编程 设计模式系列 期待你的关注哦&#xff01;&#xff01;&#xff01; 现在的一切都是为将来的梦想编织翅膀&#xff0c;让梦想在现实中展翅高飞。 Now everythi…

深入解析:C++:内存管理

深入解析:C++:内存管理pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", &qu…

电商手机网站开发非国产手机浏览器

切洋葱时&#xff0c;由于洋葱有一种挥发物质&#xff0c;常使切菜的人流泪。防止的方法是&#xff1a; 1.在切洋葱前&#xff0c;把切菜刀在冷水中浸一会儿&#xff0c;再切时就不会因受挥发物质刺激而流泪了。 2.将洋葱对半切开后,先泡一下凉水再切,就不会流泪了. 3.放微波炉…