cannot convert from 'double' to 'double *',,为什么啊~
double*cheng(doublea[31],doubleb[31]){doublecheng[31];inti=0;for(i=0;i<31;i++)cheng[i...
double* cheng(double a[31],double b[31])
{
double cheng[31];
int i=0;
for(i=0;i<31;i++)
cheng[i]=a[i]*b[i];
double *p;
p=cheng[0];
return p;
}
提示C:\Windows\System32\uiyj.cpp(64) : error C2440: '=' : cannot convert from 'double' to 'double *'
指针引用时候也报错了
double *p1,*p2;
p1=cheng[x,y];
for(i=0;i<31;i++)
xy[i]=*(p1+i);
p2=cheng[x,x];
for(i=0;i<31;i++)
x2[i]=*(p2+i);
提示说
C:\Windows\System32\uiyj.cpp(20) : error C2107: illegal index, indirection not allowed
第二个问题解决了,,应该是 p1=cheng{x,y};。。
第一个继续求助。。。》-《 展开
{
double cheng[31];
int i=0;
for(i=0;i<31;i++)
cheng[i]=a[i]*b[i];
double *p;
p=cheng[0];
return p;
}
提示C:\Windows\System32\uiyj.cpp(64) : error C2440: '=' : cannot convert from 'double' to 'double *'
指针引用时候也报错了
double *p1,*p2;
p1=cheng[x,y];
for(i=0;i<31;i++)
xy[i]=*(p1+i);
p2=cheng[x,x];
for(i=0;i<31;i++)
x2[i]=*(p2+i);
提示说
C:\Windows\System32\uiyj.cpp(20) : error C2107: illegal index, indirection not allowed
第二个问题解决了,,应该是 p1=cheng{x,y};。。
第一个继续求助。。。》-《 展开
2个回答
展开全部
p=cheng[0];----》p = &cheng[0];但是由于cheng[31]是一个局部变量只在cheng()函数里面有效,你返回的指针实际是没有用滴。
p1=cheng[x,y];-----》这个是什么啊??函数吗???如果是函数的话,应该是cheng(x,y)啊
追问
那我应该怎么改,,把cheng[31]这个数组返回函数里?
追答
你可以定义一个全局变量叫做chengji[31],然后cheng()函数中直接用这个数组就行了,在main函数中也可以直接用计算后结果了。。。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询