#include<iostream>
#include<conio.h>
#include<string>
#include<iostream>
#include<conio.h>
using namespace std;
#define OK 1;
typedef int Status;
typedef struct
{
string name;
float price;
}Book;
typedef Book ElemType;
typedef struct LNode
{
ElemType Elem;
LNode *Next;
}LNode,*List;
Status InitList( List &L)
{
L=new LNode();
L->Next=NULL;
return OK;
}
Status Q(List &tou,int n)
{
tou=new LNode();
while(n>=0)
{
List P=new LNode();
P->Next=tou->Next;
tou->Next=P;
n--;
}
return 0;
}
int main()
{
List tou;
Q(tou,4);
getch();
return 0;
}
我想测试链表中的前插法,Q函数就是完成的这个功能。
我的疑问是:
主函数中,Q(tou,4)表示生成一个头结点tou,后面接四个结点。
四个结点,由Q函数内容可以知道,结点名都是P。请问这样写,为什么能成功呢?
四个结点P,不就是4个重复变量了吗,变量是不能重复的啊!