#include<stdio.h> void swap(int *p3,int *p4)//定义swap函数,定义两个指针参数 { int t;// 定义一个整形t来做数据交换的中介 t=*p3; *p3=*p4; *p4=t;//3步交换 } main() { int a,b;//定义两个整形变量a,b int *p1,*p2;//定义两个指针变量p1,p2 p1=&a;//指针p1指向a p2=&b;//指针p2指向b printf("输入a,b的值:") ; scanf("%d %d",&a,&b); printf("swap函数调用前:%d %d\n",*p1,*p2); swap(p1,p2);//调用swap函数 printf("swap函数调用后:%d %d\n",*p1,*p2); }
程序运行成功
总结
主函数中的指针变量p1,p2通过调用swap函数向函数中的指针p3,p4传递地址,p3,p4通过地址访问a,b的值并在swap函数内调换,做到利用函数进行调换的效果
当需要调用函数对变量进行修改时,需要利用指针间接访问变量,再对变量进行修改。
时间: 2024-10-27 11:53:32