c - 在递归调用中 head 变为 0 后会发生什么


void fun1(struct Node* head)
{
 if(head == NULL)
    return;
 fun1(head->next);
  printf("%d  ", head->data);
}

head->next 变为 0 后,如何向后打印,请解释一程?

您必须根据

调用堆栈的操作方式来考虑调用。

该函数在打印任何内容之前命中fun1调用,因此它将在打印之前一直到基本情况。然后,它会在每次调用中打印;向后打印列表。

您可以阅读代码,例如"如果有,则打印下一个节点,然后打印此节点"。打印下一个节点的操作将打印第一个节点之后的节点,直到列表末尾。

相关内容

  • 没有找到相关文章

最新更新