source:
EcnlProtoTool/trunk/musl-1.1.18/src/search/tdestroy.c
Last change on this file was 444, checked in by , 4 years ago | |
---|---|
|
|
File size: 335 bytes |
Line | |
---|---|
1 | #define _GNU_SOURCE |
2 | #include <stdlib.h> |
3 | #include <search.h> |
4 | |
5 | struct node { |
6 | void *key; |
7 | struct node *left; |
8 | struct node *right; |
9 | }; |
10 | |
11 | void tdestroy(void *root, void (*freekey)(void *)) |
12 | { |
13 | struct node *r = root; |
14 | |
15 | if (r == 0) |
16 | return; |
17 | tdestroy(r->left, freekey); |
18 | tdestroy(r->right, freekey); |
19 | if (freekey) freekey(r->key); |
20 | free(r); |
21 | } |
Note:
See TracBrowser
for help on using the repository browser.