在做二叉排序树(இдஇ; )

img

你这个inserttreenode的的参数是root,而之前root是NULL,那么在这个inserttreenode函数中,你并不能改变root的值,所以在searchtreenode中直接进行root->data操作会崩溃掉的,因为此时root是NULL
要想在inserttreenode改变root的值,两种方法,一是将参数改为treenode *root,二是将返回值改为treenode
第一种调用方法:inserttreenode(&root,x)
第二种调用方法:root = inserttreenode(root,x);

search 函数首先要判断root是不是nullptr ,而不是判断root->data==x