То, что вы хотите, это чтобы это было так:
#define FULLSCREEN_MODE (ORIENTATION_IS_PORTRAIT?460:300)
#define AD_HEIGHT (ORIENTATION_IS_PORTRAIT?50:32)
#define FULLSCREEN_MODE_WITH_AD (FULLSCREEN_MODE - AD_HEIGHT)
Для более сложных выражений, я бы предложил вам обернуть это в do { ... } while(0)
вместо того, чтобы просто сгруппировать их вместе.
То, что здесь происходит, это то, что он анализируется как:
UIDeviceOrientationIsPortrait([[UIDevice currentDevice] orientation]) ? 460 : 300 - UIDeviceOrientationIsPortrait([[UIDevice currentDevice] orientation]) ? 50 : 32
, что не соответствует той математике, которую вы хотите.