#include<stdio.h> int main() { void swap(int *p1,int *p2); int a,b; int *pointer_1,*pointer_2; scanf("%d%d",&a,&b); pointer_1=&a; pointer_2=&b; swap(pointer_1,pointer_2); printf("%d,%d\n",a,b); } void swap(int *p1,int *p2) { int t; t=*p1; *p1=*p2; *p2=t; }
总结:用swap来交换两个变量的值,p1,p2是形参,先执行主函数,输入两个值将这两个地址分别赋给那两个指针变量,接着执行if语句,在函数调用时,实参值转给形参值,函数调用之后形参是不存在的,main函数最后的a,b是已经交换过的值。
时间: 2024-12-29 13:01:23