NOM
cfree - Libérer la mémoire allouée
SYNOPSIS
#include <stdlib.h>
/* Avec SunOS 4
*/
int cfree(void *ptr);
/* Avec la
glibc ou avec FreeBSD libcompat */
void cfree(void *ptr);
/* Avec 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);
Exigences de macros de test de fonctionnalités pour la glibc (consulter feature_test_macros(7)) :
cfree():
Since glibc 2.19:
_DEFAULT_SOURCE
Glibc 2.19 and earlier:
_BSD_SOURCE || _SVID_SOURCE
DESCRIPTION
This function should never be used. Use free(3) instead. Starting with version 2.26, it has been removed from glibc.
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 du même nom. La déclaration se trouve parfois dans <stdlib.h> et parfois dans <malloc.h>.
cfree avec
trois arguments
Certaines versions de SCO et de Solaris ont des
bibliothèques malloc avec une fonction cfree()
à 3 arguments, apparemment par 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(3) pour libérer de la mémoire allouée avec calloc(3), ou bien dois-je utiliser cfree() ? ». La réponse est : utilisez free(3).
Un manuel de SCO dit : « La routine cfree est fournie pour être conforme à la norme iBCSe2 et faciliter les appels de 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(3)) 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).
VERSIONS
The cfree() function was removed from glibc in version 2.26.
ATTRIBUTS
Pour une explication des termes utilisés dans cette section, consulter attributes(7).
CONFORMITÉ
La version à trois arguments de cfree() est utilisée par SCO pour être conforme à la norme iBCSe2 : « Intel386 Binary Compatibility Specification, Edition 2 ».
VOIR AUSSI
COLOPHON
Cette page fait partie de la publication 5.07 du projet man-pages Linux. Une description du projet et des instructions pour signaler des anomalies et la dernière version de cette page, peuvent être trouvées à l’adresse https://www.kernel.org/doc/man-pages/.
TRADUCTION
La traduction française de cette page de manuel a été créée par Christophe Blaess <https://www.blaess.fr/christophe/>, Stéphan Rafin <stephan.rafin [AT] laposte.net>, Thierry Vignaud <tvignaud [AT] mandriva.com>, François Micaux, Alain Portal <aportal [AT] univ-montp2.fr>, Jean-Philippe Guérard <fevrier [AT] tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon [AT] wanadoo.fr>, Julien Cristau <jcristau [AT] debian.org>, Thomas Huriaux <thomas.huriaux [AT] gmail.com>, Nicolas François <nicolas.francois [AT] centraliens.net>, Florentin Duneau <fduneau [AT] gmail.com>, Simon Paillard <simon.paillard [AT] resel.fr>, Denis Barbier <barbier [AT] debian.org> et David Prévot <david [AT] tilapin.org>
Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n’y a aucune RESPONSABILITÉ LÉGALE.
Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à <debian-l10n-french [AT] lists.org>.