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

补充:

相关推荐
我是李武涯13 分钟前
从`std::mutex`到`std::lock_guard`与`std::unique_lock`的演进之路
开发语言·c++
yuuki23323318 分钟前
【数据结构】用顺序表实现通讯录
c语言·数据结构·后端
史不了1 小时前
静态交叉编译rust程序
开发语言·后端·rust
ad钙奶长高高1 小时前
【C语言】扫雷游戏详解
c语言
读研的武2 小时前
DashGo零基础入门 纯Python的管理系统搭建
开发语言·python
Andy2 小时前
Python基础语法4
开发语言·python
但要及时清醒2 小时前
ArrayList和LinkedList
java·开发语言
孚亭2 小时前
Swift添加字体到项目中
开发语言·ios·swift
hweiyu002 小时前
Go、DevOps运维开发实战(视频教程)
开发语言·golang·运维开发