15 мая "Исходники.РУ" отмечают 20-летие присутствия в сети!
Поздравляем всех причастных и неравнодушных с юбилеем сайта!
И огромное спасибо всем, кто был с нами все эти годы!

Главная Форум Журнал Wiki DRKB Discuz!ML Помощь проекту


Как обменять значениями две целочисленные переменные без использования промежуточной переменной

Вот пример функции, которая выполняет данную задачу:

void swap(int& i, int& j)
{
 i ^= j;
 j ^= i;
 i ^= j;
}// i и j обменялись значениями

Данную технику можно применить к различным целочисленным типам, таким как char, short, unsigned long, но никак не к переменным с плавающей точкой.