Что бы исходник к примеру можно было собирать и на Visual и на RAD studio. ЗЫ:речь не об определение операционной системы.А о том как определить какой компилятор.
насчет самого компилятора - хз. а отв версию можно проверить. Для gcc: __GNUC__ __GNUC_MINOR__ __GNUC_PATCHLEVEL__