#include <stdio.h>
// Function to swap two numbers using pointers
void swap(int *x, int *y) {
int temp;
temp = *x; // store value of x
*x = *y; // put y's value into x
*y = temp; // put temp's (old x) value into y
}
int main() {
int a = 5, b = 10;
printf("Before swap: a = %d, b = %d\n", a
, b
);
swap(&a, &b); // pass the addresses of a and b
printf("After swap: a = %d, b = %d\n", a
, b
);
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgovLyBGdW5jdGlvbiB0byBzd2FwIHR3byBudW1iZXJzIHVzaW5nIHBvaW50ZXJzCnZvaWQgc3dhcChpbnQgKngsIGludCAqeSkgewogICAgaW50IHRlbXA7CgogICAgdGVtcCA9ICp4OyAgIC8vIHN0b3JlIHZhbHVlIG9mIHgKICAgICp4ID0gKnk7ICAgICAvLyBwdXQgeSdzIHZhbHVlIGludG8geAogICAgKnkgPSB0ZW1wOyAgIC8vIHB1dCB0ZW1wJ3MgKG9sZCB4KSB2YWx1ZSBpbnRvIHkKfQoKaW50IG1haW4oKSB7CiAgICBpbnQgYSA9IDUsIGIgPSAxMDsKCiAgICBwcmludGYoIkJlZm9yZSBzd2FwOiBhID0gJWQsIGIgPSAlZFxuIiwgYSwgYik7CgogICAgc3dhcCgmYSwgJmIpOyAgIC8vIHBhc3MgdGhlIGFkZHJlc3NlcyBvZiBhIGFuZCBiCgogICAgcHJpbnRmKCJBZnRlciBzd2FwOiAgYSA9ICVkLCBiID0gJWRcbiIsIGEsIGIpOwoKICAgIHJldHVybiAwOwp9