交换两个数字为何使用指针
为何交换数字使用指针
#include <stdio.h>
void jh(int * m,int * n);
int main(void)
{
int i ,j;
i = 3;
j = 5;
jh(&i,&j);
printf("%d,%d",i,j);
return 0;
}
void jh(int * m,int * n)
{
int tem;
tem = *n;
*n = *m;
*m =tem;
}
假使不适用指针,而是直接使用赋值的办法,那么当main()调用jh()函数时,只是将i,j的值复制给了函数,jh()函数内的操作并不会影响到main()函数中去.
而指针则是通过调用变量的地址,直接访问存储的位置并改变他们