728x90
728x90
void pswap(int**, int**);
int main() {
int a, b, c, d;
unsigned int r;
scanf("%d %d ", &a, &b);
int* px = &a, *py= &b;
pswap(&px,&py);
printf("%d %d", *px,*py);
}
void pswap(int** x, int** y) {
int *tmp = NULL;
tmp = *x;
*x = *y;
*y = tmp;
}
음 따로 설명할 만한 것은 없지만 함수에 넘겨주는 &px는 px의 주소를 보내는 것이고 함수 내에선 px의 포인터를 서로 바꿔주는 것이라 바뀐 값이 나온다.
ex
1 5 -> 5 1
728x90
'언어 > C' 카테고리의 다른 글
c언어 복습 - 입력, python도 조금 (0) | 2024.03.22 |
---|---|
C언어 영상처리 - 과제 1 (0) | 2024.03.20 |
오랜만에 C언어 복습 (1) | 2024.03.12 |
함수를 가리키는 포인터, 보이드 포인터(void *) (1) | 2023.11.17 |
정수형(8 bits) 16진수 변환 (1) | 2023.11.17 |