赞
踩
#include<stdio.h> void swap1(int *p1,int *p2){ //p1,p2分别对应a,b的地址,*p1和*p2分别对应a和b的值 int p;//p是一个变量 p = *p1; *p1 = *p2; *p2 = p; //通过地址进行值的交换操作,实际交换的是a,b的值 } void swap2(int *p1,int *p2){ //p1,p2分别对应c,d的地址,*p1和*p2分别对应c和d的值 //这一步的操作是把p1 p2这两个地址当做形参进行操作 int *p;//p是一个指针 p = p1; p1 = p2; p2 = p; //这个是形参交换,和原本的c d没有关系 } int main() { int a = 5,b = 10; printf("原a b:%d %d\n",a,b); swap1(&a,&b); printf("swap1后a b:%d %d\n",a,b); int c = 6,d = 8; printf("原c d:%d %d\n",c,d); swap2(&c,&b); printf("swap2后c d:%d %d\n",c,d); return 0; }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。