title: What is the type of null literal?
body: <p>D<a href="http://www.google.com"></a>ear all, I wonder what is the type of <code>null</code> literal in C#?</p>
  
  <p>In Java, the <code>null</code> literal <a href="http://java.sun.com/docs/books/jls/second_edition/html/typesValues.doc.html#11128">is of the special <em>null type</em></a>:</p>
  
  <blockquote>
    <p>There is also a special <em>null type</em>, the type of the expression <code>null</code>, which has no name. Because the null type has no name, it is impossible to declare a variable of the null type or to cast to the null type. The null reference is the only possible value of an expression of null type. The null reference can always be cast to any reference type.</p>
  </blockquote>
  
  <p>In C++11, there is <code>nullptr</code> (the recommended version of the old buddy <code>NULL</code>), which <a href="http://en.cppreference.com/w/cpp/language/nullptr">is of type <code>std::nullptr_t</code></a>.</p>
  
  <p>I searched MSDN about C#, but the <a href="http://msdn.microsoft.com/en-us/library/ms228593.aspx">specification</a> doesn't seem to say anything about that.</p>