title: C++, Need Reason for error : cannot convert parameter 1 from 'char *' to 'const char *&'
body: <p>Whey we cannot Convert pointer to a character ->TO-> a reference to a pointer to a constant character </p>
  
  <p>I am interested in knowing the reason of syntax error when we call foo_ptr. When foo_char is allowed why not foo_ptr.<BR>
  [Update 1.] I would be happy in knowing the reason that <code>foo_char()</code> is working, why <code>foo_ptr()</code> is not working .. What happens when pointer come in the picture. <br>
  <BR>
  [Update 2.]
  Didnt work in Dev C++ compiler version 4.9.9.2 too ..</p>
  
  <pre><code>//code
  //OS : Win XP
  //Env: VC++ 2008 
  
  //NOT ALLOWED
  void foo_ptr(const char * &amp; ptr) //reference to a pointer to a constant character         
  {         
          return;         
  }        
  
  
  //allowed        
  void foo_char(const char &amp; p_Char) //reference to a constant character        
  {         
          return;        
  }        
  
  int main()        
  {        
          char ch = 'd';        
          char *ptr =  "anu";        
  
          foo_char(ch);         
          foo_ptr(ptr); //NOT ALLOWED syntax error, vc++, 2008        
  
          return 0;        
  }        
  </code></pre>