#include <search.h> | |
#include "tsearch.h" | |
void *tfind(const void *key, void *const *rootp, | |
int(*cmp)(const void *, const void *)) | |
{ | |
if (!rootp) | |
return 0; | |
struct node *n = *rootp; | |
for (;;) { | |
if (!n) | |
break; | |
int c = cmp(key, n->key); | |
if (!c) | |
break; | |
n = n->a[c>0]; | |
} | |
return n; | |
} |