table of contents
- bookworm 4.18.1-1
- bookworm-backports 4.24.0-2~bpo12+1
- testing 4.24.0-2
- unstable 4.24.0-2
cfree(3) | Library Functions Manual | cfree(3) |
ИМЯ¶
cfree - освобождает выделенную память
БИБЛИОТЕКА¶
Стандартная библиотека языка C (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);
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).
АТРИБУТЫ¶
Описание терминов данного раздела смотрите в attributes(7).
Интерфейс | Атрибут | Значение |
cfree() | Безвредность в нитях | MT-Safe /* в glibc */ |
ВЕРСИИ¶
Версия cfree() с тремя аргументами, используемая в SCO, соответствует стандарту iBCSe2, Intel386 Binary Compatibility Specification, Edition 2.
СТАНДАРТЫ¶
None.
ИСТОРИЯ¶
Removed in glibc 2.26.
СМОТРИТЕ ТАКЖЕ¶
ПЕРЕВОД¶
Русский перевод этой страницы руководства разработал(и) 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 (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.
Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу списка рассылки русских переводчиков.
2 мая 2024 г. | Справочные страницы Linux 6.8 |