devxlogo

Another Technique for Swapping Two Integers Without Using a Temporary

Another Technique for Swapping Two Integers Without Using a Temporary

In a previous tip, I showed how to swap two variables without using a temporary variable. There’s another version of this solution that applies to integral values only. Here it is:

 void swap(int& i, int& j){ i ^= j; j ^= i; i ^= j;}// i and j are swapped

You can apply this technique to any integral type, e.g., char, short, unsigned long, but not to floating-point variables.

devx-admin

Share the Post: