Очевидно, что в некоторых случаях операторы #define
должны иметь круглые скобки, например:
#define WIDTH 80+20
int a = WIDTH * 2; // expect a==200 but a==120
Поэтому я всегда заключаю в скобки, даже когда это просто одно число:
#define WIDTH (100)
Кто-то новичок в C спросил меня, почему я это делаю, поэтому я попытался найти крайний случай, когда отсутствие круглых скобок для одного числа #define
вызывает проблемы, но я не могу придумать ни одного.
Существует ли такой случай?