title: About function pointer declaration
body: <pre><code>#include &lt;stdio.h&gt;
  
  void func(int ,int);
  void (*fp)();
  
  int main()
  {
      fp = func;
      fp(10,20);
  }
  
  void func(int a,int b)
  {
      printf("%d %d\n",a,b);
  }
  </code></pre>
  
  <p>In the above piece of code, the prototypes of function pointer and the function definition doesn't match. But still the code works. Please can any one help me to over come this doubt?</p>