为什么fun()
函数会改变实参的值而fun_
函数却不会呢?
#include <stdio.h>
void fun(int *q,int *p,int *w)
{
*w=*q;
*q=*p;
*p=*w;
}
void fun_(int *q,int *p,int *w)
{
w=q;
q=p;
p=w;
}
int main()
{
int a=2,b=3,c=4,*q=&a,*p=&b,*w=&c;
fun(q,p,w);
//然后再用fun_(q,p,w);
printf("q=%d p=%d w=%d",*q,*p,*w);
return 0;
}
我无法理解。
麻烦您说的仔细点,太简单的回答我看了,但是我看不懂。
你这个代码根本就不能编译通过,你自己试过吗?