cfree(3)

NOM
cfree - Libérer la mémoire allouée

BIBLIOTHÈQUE
Bibliothèque C standard (libc, -lc)

SYNOPSIS

#include <stdlib.h>

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

/* Avec la glibc ou avec FreeBSD libcompat */
void cfree(void *ptr);

/* In SCO OpenServer */
void cfree(char ptr[.size * .n], unsigned int n, unsigned int size);

/* In Solaris watchmalloc.so.1 */
void cfree(void ptr[.size * .n], size_t n, size_t size);

    Exigences de macros de test de fonctionnalités pour la glibc (consulter feature_test_macros(7)) :

cfree() :
    Depuis la glibc 2.19 :
        _DEFAULT_SOURCE
    glibc 2.19 et antérieures :
        _BSD_SOURCE || _SVID_SOURCE

DESCRIPTION
Cette fonction ne devrait jamais être utilisée. Utilisez free(3) à la place. À partir de la glibc 2.26, elle a été supprimée de la 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).

An SCO manual writes: "The cfree routine is provided for compliance to the iBCSe2 standard and simply calls free. The n and size arguments to cfree are not used."

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).

ATTRIBUTS
Pour une explication des termes utilisés dans cette section, consulter attributes(7).
Interface | Attribut | Valeur
cfree() | Sécurité des threads | MT-Safe /* Dans la glibc */

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

STANDARDS
Aucune.

HISTORIQUE
Supprimée dans la glibc 2.26.

VOIR AUSSI
malloc(3)

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@laposte.net>, Thierry Vignaud <tvignaud@mandriva.com>, François Micaux, Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard <fevrier@tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, Julien Cristau <jcristau@debian.org>, Thomas Huriaux <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin Duneau <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis Barbier <barbier@debian.org>, David Prévot <david@tilapin.org> et Jean-Pierre Giraud <jean-pierregiraud@neuf.fr>

Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 (https://www.gnu.org/licenses/gpl-3.0.html) 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@lists.debian.org.