猿问

我想交换指针变量 ,出现了问题,请大神指点一下,谢谢!

#include<iostream>

using namespace std;

int main()

{   void input(int *n);

    void select(int *p);


int a[10];

cout<<"please input 10 numbers:"<<endl;

input(a);

select(a);

return 0;

}

void input(int *n)

{ int i;

for(i=0;i<10;i++)

cin>>*(n+i);

}

void select(int *p)

{   int i;

int *one;

int *temp;

int swap;

one=p;


for(i=0;i<10;i++)

{if((*p)>*(p+i))

{temp=p;

p=(p+i);

  (p+i)=temp;

}

}

swap=*one;

*one=*p;

*p=swap;

}



(加粗划线的地方出现这样的错误:error C2106: “=”: 左操作数必须为左值),指针变量应该可以赋值的啊,为什么?

qq_盼望_2
浏览 1351回答 1
1回答

慕粉3913390

p+i是地址 , 不是指针变量好么 
随时随地看视频慕课网APP
我要回答