Можно ли использовать оператор if внутри #define?

Я пытаюсь сделать макрос по следующей формуле:(a^2/(a+b))*bи я хочу убедиться, что не будет деления на ноль.

#define SUM_A( x, y ) if( x == 0 || y == 0) { 0 } else { ( ( ( x * x ) / ( ( x ) + ( y ) ) ) * ( y ) )}

и тогда я вызываю макрос внутри main: I '

float a = 40, b = 10, result; 
result = SUM_A(a, b); 
printf("%f", result);

Я пытался использовать скобки вокруг функции if, но я получаю синтаксические ошибки перед оператором if. Я'Я также пытался использовать возврат, но я где-то читал, что выне предполагается использовать это в определении.

Ответы на вопрос(7)

Ваш ответ на вопрос