CFREE

Section: Linux Programmer's Manual (3)
Updated: 2017-09-15
Index JM Home Page
 

名前

cfree - 割り当てられたメモリーを解放する  

書式


#include <stdlib.h>

/* SunOS 4 では */
int cfree(void *ptr);

/* glibc と FreeBSD libcompat では */
void cfree(void *ptr);

/* SCO OpenServer では */
void cfree(char *ptr, unsigned num, unsigned size);

/* Solaris watchmalloc.so.1 では */
void cfree(void *ptr, size_t nelem, size_t elsize);

glibc 向けの機能検査マクロの要件 (feature_test_macros(7) 参照):

cfree():
    Since glibc 2.19:
        _DEFAULT_SOURCE
    Glibc 2.19 and earlier:
        _BSD_SOURCE || _SVID_SOURCE  

説明

この関数は決して使用すべきではない。 代わりに free(3) を使うこと。 glibc 2.26 以降では、この関数は glibc から削除されている。  

引数が 1 つの cfree

glibc では、関数 cfree() は free(3) の別名であり、「SunOS との互換性のために追加された」。

他のシステムでは、この名前の別の関数がある。 この宣言は <stdlib.h> に存在する場合もあるし、 <malloc.h> に存在する場合もある。  

引数が 3 つの cfree

SCO と Solaris のいくつかのバージョンでは、 引数が 3 つの cfree() が含まれる malloc ライブラリがある。 これは明らかに calloc(3) に類似している。

何かを移植する時にこの関数が必要な場合、

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

をファイルに追加すること。

よく尋ねられる質問は 「calloc(3) で割り当てられたメモリーを解放するのに free(3) を使うことができるか、 それとも cfree() を使う必要があるか」というものである。 答え: free(3) を使うこと。

SCO のマニュアルには以下のように記述されている: 「cfree ルーチンは iBCSe2 規格に従うために提供されており、 単に free を呼んでいるだけである。 cfree の num と size 引数は使用されない。」  

返り値

SunOS 版の cfree() (free(3) の別名) は、成功した場合に 1 を返し、失敗した場合に 0 を返す。 エラーの場合、 errno が EINVAL に設定される: ptr の値が malloc() 系のルーチンの 1 つで以前に割り当てられた ブロックへのポインターでない。  

バージョン

cfree() 関数は、バージョン 2.26 で glibc から削除された。  

属性

この節で使用されている用語の説明については、 attributes(7) を参照。
インターフェース 属性 値
cfree() Thread safety MT-Safe /* glibc では */
 

準拠

SCO で用いられている引数が 3 つの cfree() は、iBCSe2 規格: Intel386 Binary Compatibility Specification, Edition 2 (Intel386 バイナリ互換仕様、第 2 版) に準拠する。  

関連項目

malloc(3)  

この文書について

この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報告に関する情報は https://www.kernel.org/doc/man-pages/ に書かれている。

関連キーワード

cfree   SunOS   size   メモリー   解放   stdlib   Solaris   別名   malloc   free   ルーチン   iBCSe   規格   Intel   FreeBSD   libcompat   OpenServer   watchmalloc   検査   マクロ   要件   macros   Since   earlier   互換性

Linux マニュアル 一覧

関連するコマンド・関数

calloc.3   free.3   malloc.3   realloc.3   reallocarray.3   __after_morecore_hook.3
 

Index

名前
書式
説明
引数が 1 つの cfree
引数が 3 つの cfree
返り値
バージョン
属性
準拠
関連項目
この文書について

This document was created by man2html, using the manual pages.
Time: 04:39:26 GMT, October 11, 2026