title: How and why float main() in C working?
body: <p>I tried to google it and I found that main() in C has return type 'int' . if it is 'void' it is internally treated as 'int' . 'float' or 'double' is not allowed . But when I am writing this in code blocks :</p>
  
  <pre><code>double main()
  {
  printf("hello");
  return 0;
  }
  </code></pre>
  
  <p>it is executed successfully .
  I want know how this is possible.</p>