Interview Question

What is macro?

Macros perform token replacement before C translation and need careful parentheses.

💡 Concept ✅ Quick Revision ⚙ C

Answer

A macro is a preprocessing replacement defined with `#define`. • Object-like macros replace a name, while function-like macros accept preprocessing arguments. • Arguments can be evaluated more than once by a poorly designed macro. • Parenthesize parameters and the full replacement expression when writing expression macros.

💡 C Example

#define SQUARE(value) ((value) * (value)) int result = SQUARE(4);

⚡ Quick Revision

Macros perform token replacement before C translation and need careful parentheses.