c# - 我不明白变量的值是如何变化或初始化的:
问题描述
我不明白什么是变量的新值。我不明白它是如何工作的..我无法在任何地方找到答案..
我运行它并且 x = 10 , n = 2 和 y = 0?但我看不出它背后的逻辑。
int x = 5, y = 3, n;
x *= (2 & 2);
n = 2 | 2;
y *=(5 & 8); // y = 0 ??
Console.WriteLine(x); // 10
Console.WriteLine(y); // 0
Console.WriteLine(n); // 2
x = 10 ,但 y = 0 ?我只是不明白逻辑......我不记得这个表单类,但突然之间它就在那里。这个怎么运作?
解决方案
5 就像 0101(2) 这意味着 5 包含 4 (0100) 和 1(0001)
8 就像 1000(2) 这意味着 8 只包含 8 (1000)
& 和 | 运算符检查值是否包含在相同点为真的相同元素。
所以 5|8 将包含 8 4 1 => 1101 并转换为十进制,如 13。
并且 5&8 将为零,因为 5 不包含 8 并且 8 也不包含 4 和 1。
我想介绍这个网页来了解按位运算符。
https://code.tutsplus.com/articles/understanding-bitwise-operators--active-11301
推荐阅读
- javascript - JS Discord Bot - 创建具有特定权限的频道 ( v12+ )
- python - 启用 CORS 谷歌云函数 (Python)
- css - 如何获得这样的剪辑路径
- java - 使用 PHP 在 android 中向特定用户或特定频道发送通知
- r - 如何在 R 中的表格上进行一些计算?
- macos - 使用更新的数据不断重绘路径
- r - 使用R中的magick在一个文件中写入多个PDF对象
- hibernate - 休眠多对多的工作方式类似于 OneToMany
- node.js - 使用 Nodejs 和 React 保存自定义表单数据并在 Shopify 的店面中使用它
- sql - 当我运行我的工作时,我正在使用 pgagent 在 postgresql 中做一份工作,它说无法连接到数据库