F:\c+\1234.cpp(6) : error C2664: 'shuzu' : cannot convert parameter 1 from 'int' to 'int *'
#includevoidshuzu(int*x,int*y);main(){inta[]={1,2,3,4,5,6,7,8,9,10},b[]={10,9,8,7,6,5...
#includevoid shuzu(int *x,int *y);main(){ int a[]={1,2,3,4,5,6,7,8,9,10},b[]={10,9,8,7,6,5,4,3,2,1}; shuzu(*a,*b); return 0;}void shuzu(int **x,int **y){ int i,*p=NULL; for(i=0;i<10;i++) { *p=**x; **x=**y; **y=*p; }}求大神??
展开
1个回答
展开全部
shuzu(*a,*b);改成&a, &b;
你上面的错误是你的实参与函数的类型不同,导致的
你上面的错误是你的实参与函数的类型不同,导致的
追答
等等我给你测试一下
#include
void shuzu(int *x,int *y);
main()
{
int a[]={1,2,3,4,5,6,7,8,9,10},b[]={10,9,8,7,6,5,4,3,2,1};
int i;
shuzu(a,b);
for(i=0;i<10;i++)
printf("%d", a[i]);
printf("\n");
for(i=0;i<10;i++)
printf("%d", b[i]);
printf("\n");
return 0;
}
void shuzu(int *x,int *y)
{
int i,temp;
for(i=0;i<10;i++)
{
temp=*(x+i);
*(x+i)=*(y+i);
*(y+i)=temp;
}
}
调试过了就这样
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询