title: C: why in K&R is written that EOF does not fit in char?
body: <p>I just started studying <em>The C programming Language</em> and I need to ask you this question:</p>
  
  <p>I know that the function <code>getchar()</code> gives you an integer that is always positive.
  for example for <code>\t</code> the result is 32 and this value can be store in char.</p>
  
  <p>K&amp;R's book say that EOF that is <code>-1</code> can't be stored in char (but in realty it can).
  Anyway it doesn't work with unsigned char.</p>
  
  <p>The explenation that I give to this is that char can store values from <code>-127</code> to <code>127</code>, so it can contain <code>-1</code>, but unsigned char can only go from <code>0</code> to <code>255</code>, so it can't contain <code>-1</code>.</p>
  
  <p>Am I right? And why K&amp;R's book says that?</p>