| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| #if 0 |
| static char sccsid[] = "@(#)lsearch.c 8.1 (Berkeley) 6/4/93"; |
| __RCSID("$NetBSD: lsearch.c,v 1.2 2005/07/06 15:47:15 drochner Exp $"); |
| #endif |
| |
| #ifdef _WIN32_WCE |
| # include <wce_types.h> |
| #else |
| # include <sys/types.h> |
| #endif |
| |
| #ifndef NULL |
| # define NULL 0 |
| #endif |
| |
| void * |
| lfind(const void *key, const void *base, size_t *nmemb, size_t size, |
| int(*compar)(const void *, const void *)) |
| { |
| char *element, *end; |
| |
| end = (char *)base + *nmemb * size; |
| for (element = (char *)base; element < end; element += size) |
| if (!compar(element, key)) |
| return element; |
| |
| return NULL; |
| } |