struct treenode *tree_insert(struct treenode *tp, char *item) { struct treenode *ret; if(tp == NULL) { ret = safemalloc(sizeof(struct treenode)); ret->item = copystring(item); ret->left = ret->right = NULL; return ret; } if(strcmp(item, tp->item) < 0) tp->left = tree_insert(tp->left, item); else tp->right = tree_insert(tp->right, item); return tp; }