c语言 error C2061

代码如下,问题很多不过大多相似,求大神解答#include<stdio.h>#definelist_init_size100#definelistincrement10t... 代码如下,问题很多不过大多相似,求大神解答
#include <stdio.h>
#define list_init_size 100
#define listincrement 10
typedef int ElemType;
typedef struct{
ElemType *elem;
int length;
int listsize;
}SqList;
bool initSqList(SqList &L){
L.elem =(ElemType *)malloc(list_init_size*sizeof(ElemType));
L.length=0;
L.listsize =list_init_size;
return true;

}

bool insertSqList(SqList &L,int i,ElemType e){

L.elem [0]=e;
if(i<0||i>L.length)
printf("插入位置错误");
else if(L.length ==0){
L.elem[0]=e;
L.length ++;
}else {
for(int j=L.length -1;j>i;j--){
L.elem [j+1 ]=L.elem [j];}
L.elem [i]=e;
L.length ++;
}
return true;

}
bool printList(SqList &L)
{
for(int i=0;i<L.length ;i++){
printf("%d",&L.elem[i]);
}
return true;
}

代码如下
void main(){
SqList L;
int p,v;

initSqList(&L);
printf("输入要插入的位置和数字");
scanf("%d %d",&p,&v);
insertSqList(&L,p,v);

printList(L);

}
不好意思,复制了两边代码
展开
 我来答
zhccsd
2014-08-02 · TA获得超过4042个赞
知道大有可为答主
回答量:1347
采纳率:66%
帮助的人:925万
展开全部
既然参数是引用类型那么传参数的时候不能有&,否则就变成指针了
initSqList(L);
insertSqList(L,p,v);
更多追问追答
追问
按你说的改了下还是显示原来的错误,还有就是如果不用&还能对表进行修改吗
追答
我这边没发现2061错误,可以运行,你把报错信息那一行复制过来看看

voi fun(int &a)
{
a++;
}
int a=10;
printf("%d\n",a);//10
fun(a);
printf("%d\n",a);//a就变成11了
要区分这种情况
void fun(int *a)
{
(*a)++;
}
int a=10;
printf("%d\n",a);//10
fun(&a);
printf("%d\n",a);//a就变成11了
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式