【发布时间】:2021-11-04 04:26:24
【问题描述】:
想知道 &= 运算符。以及它是如何工作的。从我收集的内容中,它找出最后一个“位”并返回它。例如二进制中的 10 是 1010。所以它会返回 0。
我无法理解的是它是如何做到的。导致该结果的过程是什么?
using System;
namespace MyApplication
{
class Program
{
static void Main(string[] args)
{
int x = 5;
x &= 3;
Console.WriteLine(x);
}
} //Output is 1
}
来自https://www.w3schools.com/cs/trycs.php?filename=demo_oper_ass7的代码
【问题讨论】:
-
二进制中的 5 是 0101(即 4 + 1)。二进制中的 3 是 0011(即 2 +1)。所以它们共享的值是 0001(即 1)。这不是 C# 独有的,这就是按位与在任何编程语言中的工作方式。请阅读Bitwise operations。您也可以参考truth tables,了解将任意两位与特定操作组合的单个结果。