The ANSI library contains both a generalized s earching and a generalized sorting procedure:
void* bsearch(const void *key, const void *array,
size_t n, size_t size, cmp_func f);
void qsort(void *array, size_t n, size_t size, cmp_func f);