| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 735 人关注过本帖
标题:再次讨论下 分配内存 释放内存
取消只看楼主 加入收藏
罗庇鹏ksq
Rank: 5Rank: 5
来 自:太平洋
等 级:职业侠客
帖 子:220
专家分:310
注 册:2012-6-30
结帖率:93.33%
收藏
已结贴  问题点数:100 回复次数:6 
再次讨论下 分配内存 释放内存
本人很菜的,恳请高手们把自己动态分配释放内存的一些实例分享下,大家一起讨论、共勉。

有兴趣讨论下。。
搜索更多相关主题的帖子: 内存 
2013-04-12 21:19
罗庇鹏ksq
Rank: 5Rank: 5
来 自:太平洋
等 级:职业侠客
帖 子:220
专家分:310
注 册:2012-6-30
收藏
得分:0 
鉴于那个帖子,,,动态分配二维数组  int (*t)[10]=new int [n][10];
n
是一个变量,在定义 t 之前应该确定其值,至于10的话,也就是必须一个维数得用常数确定,
当然可以任意合法是常数,如果是 int (*t)[m]=new int [n][m];这样就不行了,,,
这是开辟二维数组的简便方法之一吧,当然还有其他方法。
但这样开辟了后我不知道怎么释放,太弱了。。

从来都是无所谓,现在也该学着有所谓。✿咱们一个人,别坐井观天❀
2013-04-12 21:28
罗庇鹏ksq
Rank: 5Rank: 5
来 自:太平洋
等 级:职业侠客
帖 子:220
专家分:310
注 册:2012-6-30
收藏
得分:0 
没人有兴趣吗??

从来都是无所谓,现在也该学着有所谓。✿咱们一个人,别坐井观天❀
2013-04-12 21:43
罗庇鹏ksq
Rank: 5Rank: 5
来 自:太平洋
等 级:职业侠客
帖 子:220
专家分:310
注 册:2012-6-30
收藏
得分:0 
经过测试,delete []t;  确实很行,可行!!!
程序代码:
#include <stdio.h>

int main(){
    int n,i;
    scanf("%d%d",&n,&i);
    while (i--)
    {
        int (*t)[100] = new int [n][100];

        delete []t;
    }
    printf("Success!");
    return 0;
}
我输入i,t值为一亿。success!

从来都是无所谓,现在也该学着有所谓。✿咱们一个人,别坐井观天❀
2013-04-13 20:19
罗庇鹏ksq
Rank: 5Rank: 5
来 自:太平洋
等 级:职业侠客
帖 子:220
专家分:310
注 册:2012-6-30
收藏
得分:0 
好像又错了。。。

从来都是无所谓,现在也该学着有所谓。✿咱们一个人,别坐井观天❀
2013-04-13 20:21
罗庇鹏ksq
Rank: 5Rank: 5
来 自:太平洋
等 级:职业侠客
帖 子:220
专家分:310
注 册:2012-6-30
收藏
得分:0 
忘记new分配失败会使得抛出异常造成程序终止这个因素。

从来都是无所谓,现在也该学着有所谓。✿咱们一个人,别坐井观天❀
2013-04-13 20:28
罗庇鹏ksq
Rank: 5Rank: 5
来 自:太平洋
等 级:职业侠客
帖 子:220
专家分:310
注 册:2012-6-30
收藏
得分:0 
程序代码:
#include <stdio.h>



int main(){
    int n,i,d;
    scanf("%d%d",&n,&i);
    d=i;
    while (i--)
    {
        int (*t)[100] = new int [n][100];

        if(t==NULL) break;//检查[动态分配内存]是否成功

            


        delete []t;
    }
    printf("此次[动态分配内存]未成功.");
    printf("Success!");
    return 0;
}

从来都是无所谓,现在也该学着有所谓。✿咱们一个人,别坐井观天❀
2013-04-13 20:38
快速回复:再次讨论下 分配内存 释放内存
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.029604 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved