Если нужно сравнить int x с unsigned int y, что безопаснее/лучше/ниже в C99 и в gcc 4. 4+:
int x
unsigned int y
C99
gcc 4. 4+
(unsigned int)x == y
x == (int)y
Имеет ли это значение?