title: Visual C++ function call explicit / implicit parameter count
body: <pre><code>// Function prototype with default parameters
  void func(int p1, int p2 = 0, int p3 = 0);
  
  // Function body
  void func(int p1, int p2, int p3)
  {
      printf(&quot;The # of explicit parameters is %d\n&quot;, ??);
      printf(&quot;The # of implicit parameters is %d\n&quot;, ??);
  }
  
  // Use in code
  int main(int argc, char* argv[])
  {
      func(0);        // Should print 1 explicit, 2 implicit
      func(0, 0);     // Should print 2 explicit, 1 implicit
      func(0, 0, 0);  // Should print 3 explicit, 0 implicit
  
      return 0;
  }
  </code></pre>
  <p>In the above example, how can I get the actual number of parameters passed in explicitly?  And the number of parameters passed in implicitly?</p>