Симметрично:

ел этот код, чтобы поменять два числа без использования третьей переменной, используя XOR^ оператор.

Код:

int i = 25;
int j = 36;
j ^= i;       
i ^= j;
j ^= i;

Console.WriteLine("i:" + i + " j:" + j);

//numbers Swapped correctly
//Output: i:36 j:25

Теперь я изменил приведенный выше код на этот эквивалентный код.

Мой код:

int i = 25;
int j = 36;

j ^= i ^= j ^= i;   // I have changed to this equivalent (???).

Console.WriteLine("i:" + i + " j:" + j);

//Not Swapped correctly            
//Output: i:36 j:0

Теперь я хочу знать,Почему мой код дает неправильный вывод?

Ответы на вопрос(4)

Ваш ответ на вопрос