title: error C2106: '=' : left operand must be l-value with `!=` C++
body: <p>I have absolutely no idea why my compiler is throwing this error: 
  "Error  1   error C2106: '=' : left operand must be l-value" with this line of code:</p>
  
  <pre><code>while ((input != 1 &amp;&amp; input != 2 &amp;&amp; input != 3 &amp;&amp; choice = 1) ||
        (input != 1 &amp;&amp; input != 2 &amp;&amp; input != 3 &amp;&amp; input != 4 &amp;&amp; input != 5 &amp;&amp; input != 6 &amp;&amp; choice = 1) ||
        std::cin.fail()){}
  </code></pre>
  
  <p>The error appears to want <code>input</code>, which is a short, to be modifiable, but <code>!=</code> is not a modifier, it's a checker. What is going on?</p>