#include <stdio.h>#include <string.h>#include <stdlib.h>#define MAX_LEN 101struct TreeNode {    char val;    struct TreeNode *left;    struct TreeNode *right;};// 创建二叉树struct TreeNode* createTree(char* s, int& pos) {    if (s[pos] == '#') {        pos++;        return NULL;    }    struct TreeNode* root = (struct TreeNode*)malloc(sizeof(struct TreeNode));    root->val = s[pos++];    root->left = createTree(s, pos);    root->right = createTree(s, pos);    return root;}// 全括号表达式void printFullExpression(struct TreeNode* root) {    if (root == NULL) {        return;    }    printf("(");    printFullExpression(root->left);    printf("%c", root->val);    printFullExpression(root->right);    printf(")");}int main() {    char s[MAX_LEN];    while (fgets(s,MAX_LEN,stdin) ){        int pos = 0;        struct TreeNode* root = createTree(s, pos);        printFullExpression(root);        printf("\n");    }    return 0;}这个代码有什么问题