What are ‘macro functions’ in C?

In C, the #define preprocessor command has two different forms. One form replaces tokens. Another form replaces function calls.

Examples of the difference:

// A simple replacement macro:
#define FOO 3
// A function macro:
#define INCR(x) (x++)
👋 I'm Jim, a full-stack product engineer. Want to build an amazing product and a profitable business?Read more about me or Get in touch!

More by Jim

Tagged #macros, #c, #programming. All content copyright James Fisher 2016. This post is not associated with my employer.Found an error? Edit this page.