指针参数传递的问题?
#include"stdio.h"#include<conio.h>
void swap(int*p,int*q)
{ int c;
if(*p>*q)
{
c=p;
p=q;
q=c;
}
}
void main()
{
int a,b,const*min,const*max;
printf("Please input two nums:");
scanf("%d%d",&a,&b);
min=&a,max=&b;
swap(min,max);
printf("min=%d\nmax=%d",*min,*max);
printf("\nPress any key to continue...");
getch();
}
为什么这个程序无法实现数值地址的交换,在调用的函数中将p,q之前加个指针就能实现了,难道不能仅仅交换数值所在的地址吗?