今天又遇到个问题,vs2010把c语言中的取地址当成c++里面的引用怎么办啊
#include<stdio.h>#include<process.h>
#include<malloc.h>
typedef int DataType;
int count=0;
typedef struct LNode
{
DataType data;
struct LNode *next;
}LNode,*LinkList;
void CreateList(LinkList &L,int n)
{
LNode *p;
int i;
L=(LinkList)malloc(sizeof(LNode));
L->next=NULL;
for(i=n;i>0;i--)
{
p=(LinkList)malloc(sizeof(LNode));
scanf("%d",&p->data);
p->next=L->next;
L->next=p;
}
}
int Locate(LinkList L,DataType e)
{
LNode *q;
q=L;
while(q->data!=e)
{
q=q->next;
count++;
}
return(count);
}
void main()
{
int n;
DataType e;
LinkList L;
L=(LinkList)malloc(sizeof(LNode));
L->next=NULL;
void CreateList(LinkList &L,int n);
int Locate(LinkList L,DataType e);
printf("请现在建立链表吧!!\n");
printf("请输入你要建立的链表的长度n\n");
scanf("%d",&n);
CreateList( &L, n);//在这它会提示说非常量引用必须为左值.哥们我实在是受不了了,我要的是传地址怎么成引用啦????谁帮我调试调试,感激不尽啊。
printf("现在请输入e: \n");
scanf("%d",&e);
printf("请稍后。。。。\n");
Locate( L, e);
printf("e的位序为%d",count);
system("pause");
}