为何这段代码没有返回值程序却能正常运行,且结果符合预期
ListNode* ReverseList(ListNode* pHead)
{
if (pHead == nullptr)
{
return nullptr;
}
ListNode* pre = nullptr;
ListNode* mid = pHead;
ListNode* last = mid->m_pNext;
while (mid->m_pNext != nullptr)
{
last = mid->m_pNext;
mid->m_pNext = pre;
pre = mid;
mid = last;
}
mid->m_pNext = pre;
}
这是调用:
ListNode* pReversedHead = ReverseList(pHead);