首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

如何给char*申请内存空间

2013-07-09 
怎么给char**申请内存空间要把一个文件数据读取出来,现在已经读取到了char*data里面然后要把它分割到城几

怎么给char**申请内存空间
要把一个文件数据读取出来,现在已经读取到了char*data里面
然后要把它分割到城几个把部分,我声明一个char**buf,然后吧内容分段copy到buf[i]里面
现在的问题是不知道怎么给buf[i]申请空间,直接buf[i] =(char*) malloc(256)的话貌似有问题;
[解决办法]
仅供参考

//在堆中开辟一个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);
}
//  0  1  2  3  4
//  5  6  7  8  9
// 10 11 12 13 14
// 15 16 17 18 19

热点排行