Comparing two integers without any comparison
Subtract them and check the sign using nasty bit twiddling hacks
http://graphics.stanford.edu/~seander/bithacks.html
Don't do this in production code if the other programmers know where you live.
Here's a fun bit-twiddling version that doesn't have any conditional branches.
int g = (int)"greater";
int l = (int)"less";
int e = (int)"equal";
int a = 7;
int b = 10;
char *result = (char*)((((a - b) >> 31) & l) | (((b - a) >> 31) & g) | ((~((a - b) | (b - a))) >> 31) & e);
cout << result;