渔舟唱晚的天空
——welkinwalker的遐想

字符指针数组字符指针的指针

即 char ** arr  VS char * arr[]

一句话道出这两者之间的区别,就是后者可以在声明的时候确定数组大小,但是前者不能。所以:

这两行代码运行会出core

    char ** arr;

    arr[0]=(char*)malloc(sizeof(char)*10);  

如果先做malloc则不会有问题 

 
    char ** arr;
    arr
=(char **)malloc(sizeof(char*)*10);

    arr[0]=(char*)malloc(sizeof(char)*10);  

但是下面的两行代码运行不会出现问题,因为声明的时候已经分配空间

char * arr[10];

aar[0]=(char*)malloc(sizeof(char)*10); 


 

 


posted on 2011-08-23 17:59  welkinwalker  阅读(902)  评论(0编辑  收藏  举报