#include <stdio.h>
void swap_pointer(int *pp[]);
int main(void)
{
int a = 1;
int b = 2;
int *p[2] = {&a, &b};
int size = sizeof(p) / sizeof(p[0]);
for(int i=0; i<size; i++){
printf("before : p[%d] : %p\n", i
, p
[i
] ); }
swap_pointer( p );
for(int i=0; i<size; i++){
printf("after : p[%d] : %p\n", i
, p
[i
] ); }
return 0;
}
void swap_pointer(int *pp[])
{
int *temp;
temp = pp[0];
pp[0] = pp[1];
pp[1] = temp;
}
I2luY2x1ZGUgPHN0ZGlvLmg+Cgp2b2lkIHN3YXBfcG9pbnRlcihpbnQgKnBwW10pOwoKaW50IG1haW4odm9pZCkKewoJaW50IGEgPSAxOwoJaW50IGIgPSAyOwoJCglpbnQgKnBbMl0gPSB7JmEsICZifTsKCQoJaW50IHNpemUgPSBzaXplb2YocCkgLyBzaXplb2YocFswXSk7CgkKCWZvcihpbnQgaT0wOyBpPHNpemU7IGkrKyl7CgkJcHJpbnRmKCJiZWZvcmUgOiBwWyVkXSA6ICVwXG4iLCBpLCBwW2ldICk7Cgl9CgkKCXN3YXBfcG9pbnRlciggcCApOwoJCglmb3IoaW50IGk9MDsgaTxzaXplOyBpKyspewoJCXByaW50ZigiYWZ0ZXIgIDogcFslZF0gOiAlcFxuIiwgaSwgcFtpXSApOwoJfQoJCglyZXR1cm4gMDsKfQoKdm9pZCBzd2FwX3BvaW50ZXIoaW50ICpwcFtdKQp7CglpbnQgKnRlbXA7CgkKCXRlbXAgID0gcHBbMF07CglwcFswXSA9IHBwWzFdOwoJcHBbMV0gPSB0ZW1wOwoJCn0=