| LSEARCH(3) | Library Functions Manual | LSEARCH(3) | 
lsearch, lfind —
#include <search.h>
void *
  
  lsearch(const
    void *key, void
    *base, size_t
    *nelp, size_t
    width, int
    (*compar)(const void *, const void *));
void *
  
  lfind(const
    void *key, const void
    *base, size_t
    *nelp, size_t
    width, int
    (*compar)(const void *, const void *));
lsearch(), and
  lfind() provide basic linear searching functionality.
base is the pointer to the beginning of an array. The argument nelp is the current number of elements in the array, where each element is width bytes long. The compar argument points to a function which compares its two arguments and returns zero if they are matching, and non-zero otherwise.
The lsearch() and
    lfind() functions return a pointer into the array
    referenced by base where key is
    located. If key does not exist,
    lfind() will return a null pointer and
    lsearch() will add it to the array. When an element
    is added to the array by lsearch() the location
    referenced by the argument nelp is incremented by
  one.
lsearch() and lfind()
  functions conform to IEEE Std 1003.1-2001
  (“POSIX.1”).
| July 6, 2005 | NetBSD 9.3 |