将变量x和y(必须都是整型)进行"按位与"(&操作符的功能),将结果"按位取反"(~操作符的功能),再将结果和y进行"按位或"(|操作符的功能),最后得到整个表达式y|~(x&y)的结果。如:
//#include "stdafx.h"//If the vc++6.0, with this line.输出是-1。过程是这样的:
x&y=00001010&00010100=00000000(两个数的二进制对应位都是1时这位才得1否则是0);
~(x&y)=~00000000=11111111;
y|~(x&y)=000010100 | 11111111=11111111(两个数的二进制对应位只要有1个1这位就得1)。