#include #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; }