举例来说 先是按位与 s=0x00101101 s&=s-1; 这个操作每执行一次,就将最后的一个1变成0 然后是异或 示例代码,将一个字符串倒过来 通过异或来交换两个字符 当然,数字也一样的 void SwapBuffer(char*first,char* last) { while (first < last) { *first = (*first)^(*last); (*last) = (*last)^(*first); *first = (*first)^(*last); first++; last--; } } 恩,有其他的再收集