title: How to print macros in msvc preprocessor?
body: <p>Is there a way to see my #defines in preprocessor file using msvc or gcc?</p>
  
  <p>here's a little code: </p>
  
  <pre><code>#include &lt;iostream&gt;
  
  #define asdasdadda asdsad    
  
  int main()
  {
      #ifdef asdasdadda
          std::cout &lt;&lt; "yes\n";
      #else
          std::cout &lt;&lt; "no\n";
      #endif
  
      return 0;
  }
  </code></pre>
  
  <p>I compile it with cl by this way:</p>
  
  <pre><code>$ cl main.cpp /C /P
  </code></pre>
  
  <p>And here's the tail of preprocessored main.i:</p>
  
  <pre><code>#line 2 "main.cpp"
  
  
  
  
  int main()
  {
  
          std::cout &lt;&lt; "yes\n";
  
  
  #line 13 "main.cpp"
  
      return 0;
  }
  </code></pre>
  
  <p>And here's that I expect: </p>
  
  <pre><code>#line 2 "main.cpp"
  
  
  #define asdasdadda asdsad
  
  int main()
  {
  
          std::cout &lt;&lt; "yes\n";
  
  
  #line 13 "main.cpp"
  
      return 0;
  }
  </code></pre>
  
  <p>gcc behaviour is the same... </p>