Linux

CentOS 5.3

cfree(3)


CFREE

NOM

cfree − Libérer la mémoire allouée.

SYNOPSIS

#include <stdlib.h>

/* Dans SunOS 4 */
int cfree(void *ptr);

/* Dans glibc ou FreeBSD libcompat */
void cfree(void *ptr);

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

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

DESCRIPTION

Cette fonction ne devrait jamais être utilisée. Utilisez free(3) à la place.

cfree avec un argument

Dans la glibc, la fonction cfree() est un synonyme de free(3), « ajoutée pour être compatible avec SunOS ».

D’autres systèmes ont d’autres fonctions avec ce nom. La déclaration se trouve parfois dans <stdlib.h> et parfois dans <malloc.h>.

cfree avec trois arguments

Certaines versions SCO et Solaris ont des bibliothèques malloc avec cfree() apparemment comme une analogie à calloc(3).

Si vous en avez besoin et que vous faites un portage, ajoutez

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

dans votre fichier

Une question fréquemment posée est : « Puis-je utiliser free() pour libérer de la mémoire allouée avec calloc(), ou bien dois-je utiliser cfree() ? » Réponse : utilisez free().

Un manuel SCO dit : « La routine cfree est fournie pour être conforme à la norme iBCSe2 et faciliter les appels free. Les arguments num et size de cfree ne sont pas utilisés. »

VALEUR RENVOYÃE

La version SunOS de cfree() (qui est un synonyme de free()) renvoie 1 si elle réussit et 0 si elle échoue. En cas d’erreur, errno est positionnée à EINVAL : la valeur de ptr n’était pas un pointeur vers un bloc précédemment alloué par l’une des routines de la famille malloc(3).

CONFORMITÃ

La version trois arguments de cfree() est utilisée par SCO pour être conforme à la norme iBCSe2 : Intel386 Binary Compatibility Specification, Edition 2.

TRADUCTION

Ce document est une traduction réalisée par Alain Portal <aportal AT univ-montp2 DOT fr> le 20 juillet 2005 et révisée le 10 juillet 2006.

L’équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. La version anglaise la plus à jour de ce document est toujours consultable via la commande : « LANG=en man 3 cfree ». N’hésitez pas à signaler à l’auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.


cfree(3)