title: islower() works with != operator but not == operator
body: <p>So I wrote a basic program that checks for lowercase vowels in a string and displays how many it found.</p>
  
  <p>I was using this at first:</p>
  
  <pre><code>for (char ch : str)
      {
          if (islower(ch) == true &amp;&amp; isVowel(ch) == true) //isVowel is a function that
              strCount++;                                 //I made
      }
  </code></pre>
  
  <p>And my program wouldn't increment the counter but when I changed it to this:</p>
  
  <pre><code>for (char ch : str)
      {
          if (islower(ch) != false &amp;&amp; isVowel(ch) == true)
              strCount++;
      }
  </code></pre>
  
  <p>It started working immediately. Why? Don't</p>
  
  <pre><code>if (islower(ch) != false)
  </code></pre>
  
  <p>and</p>
  
  <pre><code>if (islower(ch) == true)
  </code></pre>
  
  <p>do the exact same thing?</p>