c语言练习64:calloc和realloc

calloc和realloc

C语⾔还提供了⼀个函数叫 calloc , calloc 函数++++⽤来动态内存分配

和realloc是有区别的

练习使用calloc和realloc

realloc在c语言练习63中有所应用,realloc是为了扩大内存空间

下面为calloc和recalloc的例子代码:

cpp 复制代码
#include<stdio.h>
#include<stdlib.h>
int main() {
	int* p = (int*)malloc(5 * sizeof(int));
	if (p == NULL) {
		perror(malloc);
		return 1;
	}
	int i = 0;
	for (i = 0; i < 5; i++) {
		*(p + i) = i + 1;
	}
	/*for (i = 0; i < 5; i++) {
		printf("%d ", (*p + i));
	}*/
	//调整申请的堆上内存
	int*ptr=(int*)realloc(p, 40);
	if (ptr != NULL) {
		p = ptr;
		ptr = NULL;
	}
	else {
		perror(realloc);
		return 1;
	}
	//使用
	for (i = 0; i < 10; i++) {
		printf("%d\n", *(p + i));
	}
	free(p);
	p = NULL;
	return 0;
}

补充:

相关推荐
014-code31 分钟前
订单超时取消与库存回滚的完整实现(延迟任务 + 状态机)
java·开发语言
lly2024061 小时前
组合模式(Composite Pattern)
开发语言
游乐码1 小时前
c#泛型约束
开发语言·c#
Dontla1 小时前
go语言Windows安装教程(安装go安装Golang安装)(GOPATH、Go Modules)
开发语言·windows·golang
chushiyunen1 小时前
python rest请求、requests
开发语言·python
铁东博客1 小时前
Go实现周易大衍筮法三变取爻
开发语言·后端·golang
baidu_huihui1 小时前
在 CentOS 9 上安装 pip(Python 的包管理工具)
开发语言·python·pip
南 阳1 小时前
Python从入门到精通day63
开发语言·python
lbb 小魔仙1 小时前
Python_RAG知识库问答系统实战指南
开发语言·python
weixin_446023562 小时前
C语言:面向过程、应用底层开发、跨平台的通用程序设计语言
c语言·跨平台·数据类型·底层开发·面向过程