int *m(int *x,int *y){return x>y?x:y;}
void main(){int a,b; cin>>a>>b;
cout<<*m(&a,&b)<<endl;}
从键盘输入55,88的时候,为什么输出的是55啊。上面的指针函数里面比较的是地址吗
int *m(int *x,int *y){return x>y?x:y;}
上面这样就是比较的是a和b的地址。想比较a和b的值代码如下。
int* m(int* x,int* y){return *x > *y? x : y;}
对啊,x y比较的是地址,比较值要*x>*y