logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

lfind, lsearch - linear search of an array

Attributes

       For an explanation of the terms used in this section, see attributes(7).
       ┌─────────────────────────────────────────────────────────────────────────────┬───────────────┬─────────┐
       │ InterfaceAttributeValue   │
       ├─────────────────────────────────────────────────────────────────────────────┼───────────────┼─────────┤
       │ lfind(), lsearch()                                                          │ Thread safety │ MT-Safe │
       └─────────────────────────────────────────────────────────────────────────────┴───────────────┴─────────┘

Bugs

       The naming is unfortunate.

Description

lfind() and lsearch() perform a linear search for key in the array base which has *nmemb elements of size
       bytes  each.   The comparison function referenced by compar is expected to have two arguments which point
       to the key object and to an array member, in that order, and which returns zero if the key object matches
       the array member, and nonzero otherwise.

       If lsearch() does not find a matching element, then the key object is inserted at the end of  the  table,
       and  *nmemb  is incremented.  In particular, one should know that a matching element exists, or that more
       room is available.

History

       POSIX.1-2001, SVr4, 4.3BSD.  libc-4.6.27.

Library

       Standard C library (libc, -lc)

Name

       lfind, lsearch - linear search of an array

Return Value

lfind() returns a pointer to a matching member of the array, or NULL if no  match  is  found.   lsearch()
       returns a pointer to a matching member of the array, or to the newly added member if no match is found.

See Also

bsearch(3), hsearch(3), tsearch(3)

Linux man-pages 6.9.1                              2024-05-02                                         lsearch(3)

Standards

       POSIX.1-2008.

Synopsis

#include<search.h>void*lfind(constvoidkey[.size],constvoidbase[.size*.nmemb],size_t*nmemb,size_tsize,int(*compar)(constvoid[.size],constvoid[.size]));void*lsearch(constvoidkey[.size],voidbase[.size*.nmemb],size_t*nmemb,size_tsize,int(*compar)(constvoid[.size],constvoid[.size]));

See Also