Bootstrap

C++——按位与运算

  按位与运算符(&)用于对两个整数的二进制表示进行按位“与”操作。具体来说,它会比较两个二进制数字的对应位,只有当两个位都为1时,结果位才为1,否则为0。

  1010
& 1101
  ----
  1000

例子中,只有第二位上的1和第三位上的1同时为1,所以结果中的对应位为1,其他位为0。

 按位与运算在判断奇偶数时有奇效

#include<iostream>
using namespace std;
int main()
{
    int n;
    cin>>n;
    cout<<(n&1?"odd":"even");
/*n & 1 执行了 n 和 1 的按位与运算。按位与运算的规则是:
两个相应的二进制位都为1时,结果位为1,否则为0。*/
    return 0;
}

(n & 1 ? "odd" : "even") 表示:如果 n 的最低位为1,返回字符串 "odd",否则返回字符串 "even"。

gtp原解

悦读

道可道,非常道;名可名,非常名。 无名,天地之始,有名,万物之母。 故常无欲,以观其妙,常有欲,以观其徼。 此两者,同出而异名,同谓之玄,玄之又玄,众妙之门。

;