malloc函数:malloc时动态内存分配函数,用于申请一块连续的指定大小的内存块区域以void*类型返回分配的内存区域地址,就是当数组创建长度不一定 害怕数据存储不够或者不能浪费时间
在使用malloc开辟空间时,使用完成一定要释放空间,如果不释放会造内存泄漏。\n在使用malloc函数开辟的空间中,不要进行指针的移动,因为一旦移动之后可能出现申请的空间和释放空间大小的不匹配
如果分配成功则返回指向被分配内存的指针,否则返回空指针NULL。malloc函数的返回的是无类型指针,在使用时一定要强制转换为所需要的类型。
指针自身 = (指针类型*)malloc(sizeof(指针类型)*数据数量)
int *p = NULL;
int n = 10;
p = (int *)malloc(sizeof(int)*n);
free函数
作用:释放malloc(或calloc、realloc)函数给指针变量分配的内存空间。注意:使用后该指针变量一定要重新指向NULL,防止悬空指针(失效指针)出现,有效规避错误操作。
free(指针变量);
p=NULL;文章来源:https://www.toymoban.com/news/detail-732650.html
int main()
{
int *p = (int *)malloc(sizeof(int));
*p = 100;
free(p);
p = NULL;
return 0;
free函数在释放空间之后,把内存前的标志变为0,且为了防止数据泄露,它会把所释放的空间用cd进行填充。文章来源地址https://www.toymoban.com/news/detail-732650.html
到了这里,关于C语言 malloc动态内存分配函数的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!