NAME

     lfind, lsearch - linear search of an array.


SYNOPSIS

     #include <stdlib.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, const void *base, size_t *nmemb
          size_t size, int (*compar))(const void *, const void *));


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 non-zero 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.


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)