侧边栏壁纸
博主头像
noerror

虚灵不寐,众理具而万事出。

  • 累计撰写 238 篇文章
  • 累计创建 9 个标签
  • 累计收到 2 条评论
标签搜索

目 录CONTENT

文章目录

cfree函数用法详解

noerror
2022-10-14 / 0 评论 / 0 点赞 / 35 阅读 / 400 字 / 正在检测是否收录...

cfree函数用法详解

cfree函数简介

  • 头文件包含

  • 函数定义
#include <stdlib.h>
int cfree(void * ptr );
void cfree(void * ptr );
void cfree(char * ptr , unsigned  num , unsigned  size );
void cfree(void * ptr , size_t  nelem , size_t  elsize );

cfree函数常见使用错误

  • 编译错误
    warning: implicit declaration of function ‘cfree’ [-Wimplicit-function-declaration]
    解决办法:包含头文件

cfree函数详细描述

永远不应使用此函数。改用free (3)。从2.26版本开始,它已经从glibc中删除。1-arg cfree在glibc中,函数cfree ()是free (3)“为与Sunos兼容而添加”的同义词。
其他系统有其他功能与此名称。声明有时在中,有时在 3-arg cfree中,一些SCO和Solaris版本有带有3个参数cfree ()的malloc库,显然类似于calloc (3)
如果在移植某些东西时需要它,请添加

#define cfree(p, n, s) free((p))

到你的档案里。
一个常见的问题是“我可以使用free (3)来释放与calloc (3)分配的内存,还是需要cfree ()?"?答案:使用free (3)
SCO手册中写道:“cfree例程是为了符合iBCSe2标准而提供的,只是调用free。cfree的num和size参数不使用。”

cfree函数返回值

cfree ()的SunOS版本(它是free (3))的同义词,在成功时返回1,在失败时返回0。在出错的情况下,errno被设置为EINVAL :。ptr的值不是malloc (3)系列中的某个例程以前分配的块的指针。

0

评论区