malloc函数如何正确使用以达到高效内存分配?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1969个文字,预计阅读时间需要8分钟。
malloc的全称是memory allocation,中文称为动态内存分配,用于申请一块连续的指定大小的内存区域。它以void*类型返回分配的内存区域地址。当不知道内存具体位置时,想绑定真实的内存。
malloc的全称是memory allocation,中文叫动态内存分配,用于申请一块连续的指定大小的内存块区域以void*类型返回分配的内存区域地址,当无法知道内存具体位置的时候,想要绑定真正的内存空间,就需要用到动态的分配内存。
void* 类型表示未确定类型的指针。C,C++规定,void* 类型可以通过类型转换强制转换为任何其它类型的指针。
一般需和free函数配对使用。
函数定义
原型
extern void *malloc(unsigned int num_bytes);
头文件
#include <stdlib.h>
函数声明
void *malloc(size_t size);
备注:void* 表示未确定类型的指针,void *可以指向任何类型的数据,更明确的说是指申请内存空间时还不知道用户是用这段空间来存储什么类型的数据(比如是char还是int或者其他数据类型)。
返回值
如果分配成功则返回指向被分配内存的指针(此存储区中的初始值不确定),否则返回空指针NULL。当内存不再使用时,应使用free()函数将内存块释放。
本文共计1969个文字,预计阅读时间需要8分钟。
malloc的全称是memory allocation,中文称为动态内存分配,用于申请一块连续的指定大小的内存区域。它以void*类型返回分配的内存区域地址。当不知道内存具体位置时,想绑定真实的内存。
malloc的全称是memory allocation,中文叫动态内存分配,用于申请一块连续的指定大小的内存块区域以void*类型返回分配的内存区域地址,当无法知道内存具体位置的时候,想要绑定真正的内存空间,就需要用到动态的分配内存。
void* 类型表示未确定类型的指针。C,C++规定,void* 类型可以通过类型转换强制转换为任何其它类型的指针。
一般需和free函数配对使用。
函数定义
原型
extern void *malloc(unsigned int num_bytes);
头文件
#include <stdlib.h>
函数声明
void *malloc(size_t size);
备注:void* 表示未确定类型的指针,void *可以指向任何类型的数据,更明确的说是指申请内存空间时还不知道用户是用这段空间来存储什么类型的数据(比如是char还是int或者其他数据类型)。
返回值
如果分配成功则返回指向被分配内存的指针(此存储区中的初始值不确定),否则返回空指针NULL。当内存不再使用时,应使用free()函数将内存块释放。

