Trying to figure out something simple in a C macro, like this code for example:
#include #define MACRO(b) printf(\"%d\\n\", b*b) int main(
Put parentheses around your macro to evaluate arguments in the correct order:
#include #define MACRO(b) printf("%d\n", (b)*(b)) int main() { MACRO(4+1); }