#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
char *p;//野指针。
p=(char*)malloc(1);//分配所需的内存空间,p有了具体的内存指向。
*p='c';
free(p);//释放,防止内存泄漏.
p=NULL;
p=(char*)malloc(12);
if(p==NULL){
printf("malloc error\0");
exit(-1);
}
memset(p,'\0',12);//清理内存初始化成0;
strcpy(p,"chenlichen");//拷贝。
printf("%c\n",*p);
printf("扩容地址: %x\n",p);
int len=sizeof("chenlichen2222234567888888888888888888888");
int newlen = len-12+1;
realloc(p,newlen);//扩容。
printf("扩容后的地址:%x\n",p);
strcpy(p,"chenlichen2222234567888888888888888888888");
puts(p);
printf("end");
return 0;
}
C语言,malloc动态开辟内存空间,free,memset,strcpy,realloc的用法
于 2023-08-01 21:48:45 首次发布