使用new分配存储空间后必须用delete释放吗,为什么?
实践测试了一下用new后无论用不用delete进行释放程序都可运行,求解
关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率

已结题
c语言中new和delete的使用
收起
- 写回答
- 好问题 0 提建议
- 关注问题
微信扫一扫
点击复制链接分享
- 邀请回答
- 编辑 收藏 删除
- 收藏 举报
3条回答 默认 最新
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
谛凌 2023-01-13 08:00关注- delete释放它是为了节省内存
你现在的程序使用的资源没那么大,所以你不释放不会影响你的程序运行
但是如果你的程序规模很大,你全都不delete,内存一直占用,等内存被占满了,就有问题了 - 同时,如果你不delete容易造成内存泄漏,当你的程序运行结束后,如果没能把你new的内存释放掉, 那么这部分内存就会一直被它占用
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 2无用举报 编辑记录微信扫一扫
点击复制链接分享
编辑预览轻敲空格完成输入- 显示为
- 卡片
- 标题
- 链接
评论按下Enter换行,Ctrl+Enter发表内容
编辑
预览

轻敲空格完成输入
- 显示为
- 卡片
- 标题
- 链接
报告相同问题?
提交
- 2021-10-19 12:54回答 1 已采纳 #include <stdio.h> int main() { int n,s=0,m=1,d; scanf("%d",&n); while(s<n){
- 2021-10-12 11:37回答 1 已采纳 因为每次scanf输入结束都会按回车键。getchar()会接收这个回车键。如果你想接收回车键之后输入的字符,就必须先用一个getchar()将回车键滤掉才可以
- 2022-09-16 07:56回答 2 已采纳 两个for循环或者两个while循环遍历字符串,循环结束标志为遍历到的字符不为\0,在循环中使用变量自增记录遍历到的字符个数。最后再判断哪个计数变量小哪个字符串就比较短,以此类推判断相等情况
- 2024-03-16 22:58在C语言中,我们可以使用结构体来定义哈希表,包括数组(作为桶)和每个桶内的链表(用于解决冲突)。以下是一个简单的哈希表结构体定义: ```c typedef struct HashNode { char* key; void* value; struct ...
- 2022-03-19 12:12回答 2 已采纳
- 2020-02-20 12:11回答 2 已采纳 ``` a=x%3; b=x%4; c=x%5; 这些要放在for循环里面(注意循环加上{}括号) ``` 推荐的写法 ``` #include #include
- 2022-04-23 12:41回答 2 已采纳 代码如下: #include<stdio.h> int main() { int m,n,sum=0; scanf("%d%d",&m,&n); f
- 2024-02-27 12:45lijiachang030718的博客 在C语言中,这个malloc和free函数可谓是非常重要的一个函数,它们是用来从堆区中申请内存资源和释放内存资源的,如果这两个函数你能够掌握的话,说明你的编程能力已经达到了一个高度了,已经能够甩掉很大一部分人了...
- 2022-10-11 08:40回答 3 已采纳 空格是默认的分隔符,逗号不是所以如果scanf中在输入的内容之间你加了逗号,那么实际输入值时你也必须输入逗号才行。比如scanf("%d,%d"...),你必须在两个整数间加逗号如果scanf("%d
- 2021-06-16 09:50回答 3 已采纳 jc是你定义的函数啊 int jc(int k); --- jc就是自定义函数的名称,在main函数后面是该函数的函数体 jc是阶乘的拼音首字母缩写,就是n!
- 2022-10-04 12:33回答 2 已采纳 floag相当于一个旗帜,只是用来判断的,就拿你上面的例子来说,我先给flag 一个初值 0然后我在判断 如果n被3除且余数为0 那么我的flag就给他一个值,这个值不一定要是-1,但是不能为0然
- 2023-05-29 13:16深入理解C++11是现代编程中不可或缺的一部分,这一版本带来了许多增强功能,极大地提升了C++的编程体验和代码质量。C++11的关键特性包括: 1. **自动类型推断(auto)**:auto关键字使得编译器可以根据初始化表达式...
- 2021-05-24 18:54weixin_39668898的博客 new运算符用作从自由存储为 type-name 的对象或对象数组分配内存,并将已适当分类的非零指针返回到对象。[::] new [placement] new-type-name [new-initializer][::] new [placement]...有关详细信息,请参阅 new 和...
- 2023-06-25 10:49总之,C语言和C++是程序员必备的技能之一,它们的应用范围广泛,深入理解并熟练掌握这两门语言,不仅能提升个人的编程能力,也是进入软件开发领域的敲门砖。无论是初学者还是经验丰富的开发者,都应该持续学习和实践...
- 2022-09-14 06:16书中可能介绍了何时使用new和delete,以及智能指针的运用来防止内存泄露。 8. **STL(Standard Template Library)**:STL包括容器(如vector、list)、迭代器、算法和函数对象,是C++的重要部分。掌握STL可以提高...
- 没有解决我的问题, 去提问
问题事件
联系我们(工作时间:8:30-22:00)
400-660-0108kefu@csdn.net在线客服
- 京ICP备19004658号
- 经营性网站备案信息
公安备案号11010502030143
- 营业执照
- 北京互联网违法和不良信息举报中心
- 家长监护
- 中国互联网举报中心
- 网络110报警服务
- Chrome商店下载
- 账号管理规范
- 版权与免责声明
- 版权申诉
- 出版物许可证
- ©1999-2025北京创新乐知网络技术有限公司