Всем привет. Собственно вопрос в следующем, почему вот это работает корректно:
#define M 5;
...
long long k = (2+2)%M;
...
И это работает корректно:
#define M 5;
...
long long k = (2%5+2%5)%5;
...
А вот это отказывается, просит скобку поставить:
#define M 5;
...
long long k = (2%M+2%M)%M;
...
Аналогичная проблема вот с этим:
#define M 5;
...
long long k = ((2)%M+(2)%M)%M;
...
Объясните, пожалуйста, с чем это связано? Что-то в этом defin'e или же проблема в другом? Заранее спасибо.