title: What is if(i | j) and if (i & j) doing in C++
body: <p>Hello after learning C++ for several months I decided to look at some CPA practice questions and the very first question threw me off with this code.</p>
  
  <pre><code>#include &lt;iostream&gt;
  using namespace std;
  int main(void) {
   int i = 1, j = 2;
   if(i &gt; j &amp;&amp; j &gt; i)
       i++;
   if(i &gt; j || j &gt; i)
       j++;
   if(i | j)
       i++;
   if(i &amp; j)
       j++;
   cout &lt;&lt; i * j &lt;&lt; endl;
   return 0;
  }
  </code></pre>
  
  <p>What I don't understand is what the third and fourth if statements are looking for because I have never seen that syntax before. Thank You!</p>