Provided by: manpages-ru-dev_4.21.0-2_all bug

ИМЯ

       cfree - освобождает выделенную память

LIBRARY

       Standard C library (libc, -lc)

СИНТАКСИС

       #include <stdlib.h>

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

       /* в glibc или FreeBSD libcompat */
       void cfree(void *ptr);

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

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

   Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):

       cfree():
           начиная с glibc 2.19:
               _DEFAULT_SOURCE
           в glibc 2.19 и старее:
               _BSD_SOURCE || _SVID_SOURCE

ОПИСАНИЕ

       This  function  should never be used.  Use free(3)  instead.  Starting with glibc 2.26, it
       has been removed from glibc.

   cfree с 1 аргументом
       В glibc функция cfree()  является синонимом free(3), которая "добавлена для  совместимости
       с SunOS".

       В  других  системах   есть другие функции с таким же именем. Объявление функции приводится
       иногда в <stdlib.h>, а иногда <malloc.h>.

   cfree с 3 аргументами
       В некоторых версиях SCO и Solaris есть версии malloc с cfree()  с  тремя  аргументами,  по
       аналогии с calloc(3).

       Если она нужна вам при переносе чего-либо, добавьте

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

       в свой файл.

       Часто задается вопрос: "Могу ли я использовать free(3) для освобождения памяти, выделенной
       с помощью calloc(3), или нужно использовать cfree()?" Ответ: используйте free(3).

       В руководстве SCO написано: "Функция cfree доступна для соответствия стандарту iBCSe2, она
       просто вызывает free. Аргументы num и size функцией cfree не используются".

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

       Версия  cfree() из SunOS (которая является синонимом free(3)) возвращает 1 в случае успеха
       и 0 - в случае ошибки. В случае ошибки errno устанавливается в значение  EINVAL:  значение
       ptr  не  является  указателем  на  блок,  ранее  выделенным  с помощью одной из функций из
       семейства malloc(3).

ВЕРСИИ

       The cfree()  function was removed in glibc 2.26.

АТРИБУТЫ

       Описание терминов данного раздела смотрите в attributes(7).

       ┌──────────────────────────────────────────┬──────────────────────┬───────────────────────┐
       │ИнтерфейсАтрибутЗначение              │
       ├──────────────────────────────────────────┼──────────────────────┼───────────────────────┤
       │cfree()                                   │ Безвредность в нитях │ MT-Safe /* в glibc */ │
       └──────────────────────────────────────────┴──────────────────────┴───────────────────────┘

СТАНДАРТЫ

       Версия cfree() с тремя аргументами, используемая в SCO,  соответствует  стандарту  iBCSe2,
       Intel386 Binary Compatibility Specification, Edition 2.

СМ. ТАКЖЕ

       malloc(3)

ПЕРЕВОД

       Русский    перевод    этой    страницы    руководства    был    сделан   Azamat   Hackimov
       <azamat.hackimov@gmail.com>, Dmitriy  S.  Seregin  <dseregin@59.ru>,  Dmitry  Bolkhovskikh
       <d20052005@yandex.ru>,    Katrin    Kutepova    <blackkatelv@gmail.com>,    Yuri    Kozlov
       <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com>

       Этот  перевод  является  бесплатной  документацией;  прочитайте  Стандартную  общественную
       лицензию GNU версии 3 ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ или более позднюю, чтобы
       узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.

       Если вы обнаружите ошибки в переводе  этой  страницы  руководства,  пожалуйста,  отправьте
       электронное письмо на ⟨man-pages-ru-talks@lists.sourceforge.net⟩.