Macro Parentheses in C – Why SQ(2 + 3) Gives 11, Not 25
A macro that squares a number — what could go wrong? Everything, because the preprocessor doesn’t square numbers; it pastes text. This question from our C Programming Quiz App is the canonical macro trap, the one that turns SQ(2 + 3) into something that isn’t 25 — and the reason every style guide screams “parenthesize …