//List Reverse(List L)
//{
//
// List s,p,tmp,rear;
// p=(List)malloc(sizeof(struct Node)) ;p->Next=NULL;
// rear=p;
// while(L)
// {
// s=(List)malloc(sizeof(struct Node));
// s->Data=https://bbs.csdn.net/topics/L->Data;
// s->Next=rear->Next;
// rear->Next=s;
// L=L->Next;
// }
// tmp=p;p=p->Next;free(tmp);
// return p;
//}
List Reverse(List L){
List rs = NULL;
while(L){
List p = L;
L = L->Next;
p->Next = rs;
rs = p;
}
return rs;
}
反轉函式這兩個傳進來的引數 List L為啥上面執行完引數L沒變下面的L變了
uj5u.com熱心網友回復:
改成 List Reverse(List& L);你傳進去一個指標變數,對L做修改都是改到一個臨時變數身上了,所以需要傳參考進去。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/47643.html
標籤:C++ 語言
上一篇:C語言求助!
