显然,有些时候#defines必须有括号,如下:
#define WIDTH 80+20
int a = WIDTH * 2; // expect a==200 but a==120
所以我总是括号,即使它只是一个数字:
#define WIDTH (100)
C的新人问我为什么这样做,所以我试图找到一个边缘情况,在一个数字上没有括号#define会导致问题,但我想不出一个.
这种情况是否存在?