您的位置:首页 > 其它

c的三个内存分配函数(malloc,realloc,calloc)

2016-08-02 15:30 288 查看
//内存分配_malloc

int main(){
int *p;
char *p1;
p=(int *)malloc(sizeof(*p)*size);//size为需要存储的数量
p1=(char *)malloc(sizeof(*p)*size+1);//字符串要流一个结束符位置\0
if(p=NULL||p1=NULL){
exit(EXIT_FAILURE);
}
printf("suc");
return 0;
}
//内存分配_calloc 对内存进行清0操作,而malloc不进行这样的初始化,也导致了他的效率会低一点,但是更安全
int main(){
int *p;
p=(int *)calloc(size,sizeof(int));
if(p=NULL){
...
}
printf("suc");
return 0;
}
//内存分配_realooc
int main(){
int *p;
p=(int *)calloc(size,sizeof(int));

if(p=NULL){
...
}
realloc(p,sizeof(int)*newsize);
if(p=NULL){
。。。。。
}
printf("suc");
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: