例交换变量x和y的值 mainO) int *pl,*p2,x,y,t; scanf("%d,%d",&x&y); 2000 指针变量pl pl-&x;p2-&y; 2004 2008 指针变量p2 t=*pl; 2008 2012 整型变量x 7 *pl=*p2; 2012 整型变量y 6 *p2=t; 2016 ←一整型变量t printf"x-%d,y-%dn",x,y); 6 printf("x=%d,y=%d n",*p1,*p2); 运行结果:x=7,y=6 x=-7,y=6 1、先定义普通变量和同类型的指针变量。 总结使用指针变量日 如int*p,X, 2、使用取地址运算符&将指针变量指向普通变量。 如p=&x; 3、 此后,使用*p即可取代普通变量
例 交换变量x和y的值 main() { int *p1,*p2,x,y,t; scanf("%d,%d",&x,&y); p1=&x ; p2=&y; t=*p1; *p1=*p2; *p2=t; printf(“x=%d,y=%d\n",x,y); printf("x=%d,y=%d\n",*p1,*p2); } 运行结果:x=7,y=6 x=7,y=6 . . 指针变量p1 整型变量x 2000 2016 2004 2008 2012 指针变量p2 整型变量t 整型变量y 7 2008 6 2012 6 6 7 总结使用指针变量的一般步骤 1、先定义普通变量和同类型的指针变量。 如 int *p,x; 2、使用取地址运算符&将指针变量指向普通变量。 如p=&x; 3、此后,使用*p即可取代普通变量
区分:p2=pl与*p2=*pl .·. main() 2000 指针变量pl 2012 int *pl,*p2,*p,x.y; 2004 指针变量p2 scanf("%d,%d"&x&y); 2008 2008 45 整型变量x pl=&x;p2-&y; 2012 ←一整型变量y if(x>y) 23 2016 ←一指针变量p p=pl;pl=p2;p2=p;} 2008 printf("x-%d,y-%dn",xy); printf("x=%d,y=%d n",*p1,*p2);
main() { int *p1,*p2,*p,x,y; scanf("%d,%d",&x,&y); p1=&x ; p2=&y; if(x>y) { p=p1; p1=p2; p2=p;} printf("x=%d,y=%d \n",x,y); printf("x=%d,y=%d \n",*p1,*p2); } . . 指针变量p1 整型变量 x 2000 2016 2004 2008 2012 指针变量p2 指针变量 p 整型变量 y 23 2008 2012 45 2008 2012 2008 区分:p2=p1 与 *p2=*p1