Lua 中波浪号本身意味着什么?

tro*_*njo 4 lua

对于代码示例:

num_1 = 12 ~ 36

这个例子中的波浪号在做什么?它只是表示 ~= 的缩写方式吗?

lhf*_*lhf 5

\xcb\x9c是按位异或。请参阅按位运算《参考手册》

\n


Pig*_*let 5

Lua 中波浪号本身意味着什么?

运营商本身没有任何意义。只有与操作数结合起来才有意义。

Lua 中有 3 个用例~

关系运算符 ~= 不相等: a ~= b如果 a 不等于 b,则为 true

按位运算符

  1. 二进制~按位异或: a ~ b解析为一个数字,其中每个位都是ab各自位的异或值
  2. 一元~按位 NOT: ~a解析为每个位都取反的数字。所以零变成一,一变成零。

在您的情况下num_1 = 12 ~ 36, where~用作二元运算符,它是按位异或。

100100  36
001100  12
------ 
101000  40  
Run Code Online (Sandbox Code Playgroud)

因此num_1 = 12 ~ 36分配40num_1.