- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
double a, b;
...
*((DWORD*)&a) ^= *((DWORD*)&b);
*((DWORD*)&b) ^= *((DWORD*)&a);
*((DWORD*)&a) ^= *((DWORD*)&b);
*((DWORD*)&a + 1) ^= *((DWORD*)&b + 1);
*((DWORD*)&b + 1) ^= *((DWORD*)&a + 1);
*((DWORD*)&a + 1) ^= *((DWORD*)&b + 1);
omg
Есть старый способ же:
b+=a;
a-=b;
b+=a;
a=-a;
*((DWORD*)&b) ^= *((DWORD*)&a);
Гы, кто-то где-то услышал что с ^ быстрее.
а
b+=a;
a-=b;
b+=a;
a=-a;
ведет к потере точности.
cha0s, старый способ тож попахивает имхо... Мне такое вот показали:
х+=у;
у=х-у;
х-=у;