title: Data types in windows driver development
body: <p>I'm new to c and driver programming and I don't understand how to work with the capital letters data types.
  What is the difference between <code>CHAR</code> and <code>char</code>? What is the difference between <code>UNICODE_STRING</code> and <code>PUNICODE_STRING</code>? Is it a pointer to a <code>UNICODE_STRING</code>? then why is it not expressed like <code>UNICODE_STRING*</code>? my includes are:</p>
  <pre><code>#include &lt;fltkernel.h&gt;
  #include &lt;dontuse.h&gt;
  #include &lt;suppress.h&gt;
  #include &lt;ntddk.h&gt;
  </code></pre>