title: Is it possible to make a check on a macro argument with the #if into the mcro function
body: <p>I want to develop a macro in this way</p>
  
  <pre><code>#define MACRO_TEST(a, MM, MN) \
  #if MM == 1
      printf("MM "); \
  #endif
  #if MN == 1
      printf("MN "); \
  #endif
      printf("%d\n",a);
  
  
  main()
  {
     MACRO_TEST(4, 1, 1); // output should be: MM MN 4
     MACRO_TEST(4, 1, 0); // output should be: MM 4
     MACRO_TEST(4, 0, 1); // output should be: MN 4
     MACRO_TEST(4, 0, 0); // output should be: 4
  }
  </code></pre>
  
  <p>Is it possible to do that in C? </p>
  
  <p>And what's the right way? because the above code generate a build errors</p>