title: what is the purpose of using the XOR operator and this line "if (current & 1)" "current = exclusive >> I;"
body: <pre><code>#include &quot;main.h&quot;
  /**
   * flip_bits - count the number of bits to change
   * to get from one number to another
   * @n: the first number
   * @m: second number
   * Return: the number of bits needed to change
   */
  
  unsigned int flip_bits(unsigned long int n, unsigned long int m)
  {
  
    int i, count = 0;
    unsigned long int current;
    unsigned long int exclusive = n ^ m;
    for (i = 63; i &gt;= 0; i--)
    {
      current = exclusive &gt;&gt; i;
      if (current &amp; 1)
        count++;
    }
  
    return (count);
  }
  </code></pre>