链表逆序输出

#include <iostream>
#include <cstdio>
#include <stdlib.h>
using namespace std;
struct ListNode
{
    int m_value;
    ListNode *m_pNext;
};
void PrintList(ListNode *pHead);
int main()
{
    ListNode *pHead;
    ListNode *pNode;
    ListNode *pN;
    pHead=(ListNode*)malloc(sizeof(ListNode));
    pHead->m_pNext=NULL;
    pNode=pHead;
    int n;
    int count=6;
    while(count--)
    {
        pN=(ListNode*)malloc(sizeof(ListNode));
        pNode->m_pNext=pN;
        pNode=pN;
        scanf("%d",&n);
        pNode->m_value=n;
    }
    pNode->m_pNext=NULL;
    PrintList(pHead->m_pNext);
    return 0;
}
void PrintList(ListNode *pHead)
{
    if(pHead!=NULL)
    {
        if(pHead->m_pNext!=NULL)
            PrintList(pHead->m_pNext);
        printf("%d
",pHead->m_value);
    }
}

原文地址:https://www.cnblogs.com/xiaofeiwang/p/3825010.html