Illustration of using bitwise "exclusive OR" operation to swap int values in C.
// Adapted from answer on Quora.
//
// "Can I swap() without any extra variable in C?"
//
// https://is.gd/wpsOlP
#include <stdio.h>
int main(int argc, char** argv) {
int a = 37;
int b = 40;
printf("a: %d\n", a);
printf("b: %d\n", b);
printf("Swap!\n");
// Exclusive OR bit operation.
a ^= b;
b ^= a;
a ^= b;
printf("a: %d\n", a);
printf("b: %d\n", b);
return 0;
}