Если список пуст, bstcreate()
устанавливает root
на новый Node
, а затем ожидается немедленное завершение, поскольку больше ничего не нужно делать. Оператор return
выполняет этот выход. Поскольку функция объявлена как возвращающая void
, нет необходимости указывать значение для return
.
t
инициализируется в root
, а r
инициализируется в NULL
. Если вы удалите оператор return
, и root
будет NULL
при входе, тогда t
будет изначально NULL
, что приведет к пропуску while
l oop, а затем произойдет cra sh при доступе к элементам r
, поскольку r
по-прежнему NULL
, поскольку l oop не назначил r
для указания где-либо.