C存储空间的分配和释放-创新互联
存储空间的分配和释放
创新互联从2013年创立,是专业互联网技术服务公司,拥有项目成都网站建设、做网站网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元陆港做网站,已为上家服务,为陆港各地企业和个人服务,联系电话:18980820575动态存储分配的数据结构
头文件 #include
用四个函数来进行动态储存分配{ malloc(),calloc(), realloc()},动态存储释放:free()。
1.malloc(),动态分配一段内存空间
void *malloc(unsigned int size)
用sizeof()来计算申请空间的大小
例:int *p=(int *)malloc(sizeof(int))
申请一个Int类型长度的存储空间,并将分配的地址空间地址转化成int类型地址,赋给所定义的指针变量P.
2.calloc(),动态分配连续内存空间
void *calloc(unsigned int n,unsigned int size);
内存申请n个长度的size字节的存储空间,并返回改存储空间的起始位置,n为元素的个数,size为元素存储长度。
例:int*p=(int*)calloc(10,sizeof(int));
相当于 int *p=(int *)mallo(sizeof(int)*10);
比如:用calloc和malloc 函数分配数组26个字符的字符数
char *ch2=(char*)calloc(26,sizeof(char));
char *ch3=(char*)malloc(sizeof(char[26]);
3.realloc改变指针指向空间的大小
void *realloc (void *prt,size_t size)
例:
改变一个浮点型空间大小为整型大小
fDouble=(double*)malloc(sizeof(double));
iInt=realloc(fDouble,sizeof(int));
程序:double 型改为short
4.free(),释放存储空间
void free (void *p)
无返回值
例:int *a;
*a=(int *)calloc(20,sizeof(int));
a=b;
b++;
free(a);
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
当前名称:C存储空间的分配和释放-创新互联
本文地址:http://pwwzsj.com/article/hcdds.html