==================== 
변수의 값을 인수로 주는 경우 
==================== 
#include <stdio.h> 
void swap(int x, int y); // 두 변수의 값을 바꾸는 함수 선언 
int main(void){ 
    int a = 10, b = 20; // 변수 선언과 초기화 
    swap(a, b); // a, b의 값을 복사해서 전달 
    printf(“a:%d, b:%d\n”, a, b); // 변수 a, b 출력 
    return 0; 
} 
void swap(int x, int y){ // 인수 a, b의 값을 x, y에 복사해서 저장 
    int temp; // 교환을 위한 변수 
    temp = x; // temp에 x 값 저장 
    x = y; // x에 y 값 저장 
    y = temp; // y에 temp 값 저장 
} 
==================== 
포인터를 사용한 두 변수 값의 교환 
==================== 
#include <stdio.h> 
void swap(int *pa, int *pb); // 두 변수의 값을 바꾸는 함수의 선언 
int main(void){ 
    int a = 10, b = 20; // 변수 선언과 초기화 
    swap(&a, &b); // a, b의 주소를 인수로 주고 함수 호출 
    printf(“a:%d, b:%d\n”, a, b); // 변수 a, b 출력 
    return 0; 
} 
void swap(int *pa, int *pb){ // 매개변수로 포인터 선언 
    int temp; // 교환을 위한 임시 변수 
    temp = *pa; // temp에 pa가 가리키는 변수의 값 저장 
    *pa = *pb; // pa가 가리키는 변수에 pb가 가리키는 변수의 값 저장 
    *pb = temp; // pb가 가리키는 변수에 temp 값 저장 
} 


