为什么会出现这种错误 error C2296: '&' : illegal, left operand has type 'struct LNode *'

#include<stdio.h>#include<stdlib.h>typedefintElemType;typedefstructLNode{ElemTypedata... #include <stdio.h>
#include <stdlib.h>

typedef int ElemType;

typedef struct LNode
{
ElemType data;
struct LNode *next;
}LNode, *LinkList;

//用尾插法创建单链表
void CreateLinkListTail(LinkList *L,int n)
{
int i;
ElemType e;
LinkList p,q;
p=*L; //p是头结点

for(i=0;i<n;i++)
{
q=(LNode *)malloc(sizeof(LNode));
printf("请输入数组元素:");
scanf("%d",&e);
q->data=e;
p->next=q;
p=q;
}

p->next=NULL;
}

int LinkListInsert(LinkList *L,int i,ElemType e)
{
int j=1;
LinkList p,s;
p=*L;
while(p & j<i)
{
p=p->next;
j++;
}

if(!p || j>i)
{
return 0;
}

s=(LNode *)malloc(sizeof(LNode));
s->data=e;

s->next=p->next;
p->next=s;

return 1;
}

int LinkListDelete(LinkList *L,int i,ElemType *e)
{
int j=1;
LinkList p;
p=*L;
while(p->next & j<i)
{
p=p->next;
j++;
}

if(!p->next || j>i)
{
return 0;
}

*e=p->next->data;
p->next=p->next->next;

return 1;
}

int Locate(LinkList L,ElemType e)
{
int i=1;
LinkList p;
p=L->next;

while(p)
{
if(p->data==e)
{
return i;

}
else
{
p=p->next;
i++;
}
}

return 0;

}

void print(LinkList L)
{
LinkList p;
p=L->next;
while(p)
{
printf("%d",p->data);
p=p->next;
}
}

void main()
{
int n;
int e,status;

LinkList L;

printf("请输入链表长度n=");
scanf("%d",&n);
CreateLinkList(&L,n);
printf("\n\n");

status=LinkListInsert(&L,2,11);
if(status)
{
printf("插入成功!输出插入后的单链表:\n");
print(L);
}
else
{
printf("插入失败!\n");
}

printf("\n\n");

status=LinkListDelete(&L,2,&e);
printf("输入要删除的元素!");
scanf("%d",&e);
if(status)
{
printf("删除成功!输出删除后的单链表:\n");
print(L);
}
else
{
printf("删除失败!\n");
}

printf("\n\n");

status=Locate(L,3);
if(status)
{
printf("查找成功!查找的元素位于单链表的第%d位",status);
}
else
{
printf("查找失败!\n");
}

printf("\n\n");

}
展开
 我来答
kingdjh
2015-05-31 · TA获得超过955个赞
知道小有建树答主
回答量:939
采纳率:66%
帮助的人:836万
展开全部
&是按位与
&&才是条件判断于
把while里的&改成&&
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式