Описаны грабли, касающиеся макроопределений (#define) в языках Си/Си++.

(читать дальше)