#include <stdio.h>
void swap(int *p1,int *p2) //聲明函數
void main()
{
int a1,a2;
int *ptr1,*ptr2; //定義指向整型變量的指針
printf("請輸入兩個整數:\n");
scanf("%d,%d",&a1,&a2);
ptr1=&a1; //ptr1指向a1
ptr2=&a2; //ptr2指向a2
printf("&a1=%p,&a2=%p\n",&a1,&a2); //輸出a1和a2的地址
printf("ptr1=%p,ptr2=%p\n",ptr1,ptr2); //輸出ptr1和ptr2的值(即指向變量的地址)
swap(ptr1,ptr2); //函數調用。指針變量ptr1和ptr2作為函數的參數
printf("a1=%d,a2=%d\n",a1,a2); //輸出a1和a2的值
printf("*ptr1=%d,ptr2=%d\n",*ptr1,*ptr2); //輸出ptr1和ptr2所指向變量的a1及a2的值
printf("&a1=%p,&a2=%p\n",&a1,&a2); //輸出a1和a2的地址
printf("ptr1=%p,ptr2=%p\n",ptr1,ptr2); //輸出ptr1和ptr2的值(即a1和a2的地址)
}
void swap(int *p1,int *p2) //定義函數,參數為指針變量類型
{
int t;
t=*p1;
*p1=*p2;
*p2=t;
}