title: Getting negative value with bit-fields
body: <p>I have a question related to bit-fields in C. Here I have such a structure:</p>
  
  <pre><code>struct Register
  {
    int bit:1;
  };
  
  int main(void)
  {
    struct Register bit = {1};
  
    printf("\nbit = %d", bit.bit);
    return 0;
  }
  </code></pre>
  
  <p>Can you please explain me why do I get:</p>
  
  <blockquote>
    <p>bit = -1</p>
  </blockquote>