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;
}

补充:

相关推荐
武当豆豆1 小时前
C++编程学习阶段性总结
开发语言·c++
学不动CV了2 小时前
C语言32个关键字
c语言·开发语言·arm开发·单片机·算法
你怎么知道我是队长2 小时前
python-enumrate函数
开发语言·chrome·python
小屁孩大帅-杨一凡2 小时前
如何解决ThreadLocal内存泄漏问题?
java·开发语言·jvm·算法
大熋2 小时前
Playwright Python 教程:网页自动化
开发语言·python·自动化
赟赟、嵌入式3 小时前
imx6ul Qt运行qml报错This plugin does not support createPlatformOpenGLContext!
开发语言·qt
cdg==吃蛋糕3 小时前
selenium 使用方法
开发语言·python
爱掉发的小李4 小时前
前端开发中的输出问题
开发语言·前端·javascript
学不动CV了4 小时前
ARM单片机OTA解析(一)
c语言·arm开发·stm32·单片机·嵌入式硬件·51单片机
zyx没烦恼4 小时前
五种IO模型
开发语言·c++