| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1106 人关注过本帖
标题:怎么用 malloc 生成二维数组
取消只看楼主 加入收藏
编译中。。
Rank: 7Rank: 7Rank: 7
来 自:中国
等 级:黑侠
帖 子:198
专家分:511
注 册:2011-7-29
结帖率:75%
收藏
已结贴  问题点数:20 回复次数:1 
怎么用 malloc 生成二维数组
int *Cross = (int*)malloc(sizeof(int)*N);
int **total = (int **)malloc(sizeof(Cross)*N);


我的第一想法就是上面这般。但是很遗憾不行。。。
我想用malloc 生成个二维数组
就像int total[N][N]  这样一般的。
2014-12-05 18:55
编译中。。
Rank: 7Rank: 7Rank: 7
来 自:中国
等 级:黑侠
帖 子:198
专家分:511
注 册:2011-7-29
收藏
得分:0 
先说一下,楼主在找别的资料找到了这个,还没看,楼上的解答也没看,我不知道下面的有没有用,先在论坛里保存一下,对于这个问题。我明天有空再回来看大家的解答

//在堆中开辟一个4×5的二维int数组
#include <stdio.h>
#include <malloc.h>
int **p;
int i,j;
void main() {
    p=(int **)malloc(4*sizeof(int *));
    if (NULL==p) return;
    for (i=0;i<4;i++) {
        p[i]=(int *)malloc(5*sizeof(int));
        if (NULL==p[i]) return;
    }
    for (i=0;i<4;i++) {
        for (j=0;j<5;j++) {
            p[i][j]=i*5+j;
        }
    }
    for (i=0;i<4;i++) {
        for (j=0;j<5;j++) {
            printf(" %2d",p[i][j]);
        }
        printf("\n");
    }
    for (i=0;i<4;i++) {
        free(p[i]);
    }
    free(p);
}

 当我感到些许疲倦时   便想躺在阳光下,小路旁 . 可这些往往都是奢望..
2014-12-05 20:56
快速回复:怎么用 malloc 生成二维数组
数据加载中...
 
   



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

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