diff options
Diffstat (limited to 'tree.c')
-rw-r--r-- | tree.c | 14 |
1 files changed, 9 insertions, 5 deletions
@@ -41,20 +41,24 @@ node * parse(char *str) { //expects a string with no whitespace return this; } -void printTree(node *root, int level) { +void fprintTree(FILE *stream, node *root, int level) { if (root == NULL) return; if (level) { for (int i = 1; i < level; i++) { - printf("│ "); + fprintf(stream, "│ "); } - printf("├─ "); + fprintf(stream, "├─ "); } - printf("%c\n", root->el); + fprintf(stream, "%c\n", root->el); for (int i = 0; i < 2; i++) { if (root->child[i] != NULL) { - printTree(root->child[i], level + 1); + fprintTree(stream, root->child[i], level + 1); } } } + +void printTree(node *root, int level) { + fprintTree(stdout, root, level); +} |