lfind, lsearch — linear search of an array
#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
() 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. In
particular, one should know that a matching element exists,
or that more room is available.
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.
bsearch(3), hsearch(3), tsearch(3)
|