Linux repositories inspector
GNU
2017-09-15
Aliases: lfind(3), lfind(3), lfind(3), lfind(3), lfind(3), lfind(3), lfind(3), lfind(3)

man-pages-ru

Russian man pages from the Linux Documentation Project

manpages-dev

Manual pages about using GNU/Linux for development

man-pages

Linux kernel and C library user-space interface documentation

ИМЯ

lfind, lsearch - линейный поиск в массиве

ОБЗОР

#include <search.h>

void *lfind(const void *key, const void *base, size_t *nmemb, size_t size, int(*compar)(const void *, const void *));
void *lsearch(const void *key, void *base, size_t *nmemb, size_t size, int(*compar)(const void *, const void *));

ОПИСАНИЕ

Функции lfind() и lsearch() выполняют линейный поиск key в массиве base, который имеет *nmemb элементов, каждый по size байт. Функция сравнения, определяемая compar, должна иметь два параметра, которые указывают на объект key и на член массива, в указанном порядке, и возвращать ноль, если объект key совпадает с членом массива, и ненулевое значение в противном случае.
Если lsearch() не находит совпадающих элементов, то объект key вставляется в конец таблицы, а значение *nmemb увеличивается. Отметим, что теперь совпадающий элемент существует, и что есть ещё место.

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

Функция lfind() возвращает указатель на совпадающий член массива, или NULL, если не было совпадений. Функция lsearch() возвращает указатель на совпадающий член массива, или на добавленный новый член, если не было найдено совпадений.

АТРИБУТЫ

Описание терминов данного раздела смотрите в attributes(7).
Интерфейс Атрибут Значение
lfind(), lsearch() Безвредность в нитях MT-Safe

СООТВЕТСТВИЕ СТАНДАРТАМ

POSIX.1-2001, POSIX.1-2008, SVr4, 4.3BSD. Присутствует в libc начиная с libc-4.6.27.

ДЕФЕКТЫ

Неудачно выбрано имя.

СМОТРИТЕ ТАКЖЕ

⇧ Top