什么是C#中的Delphi"shl"?

Daa*_*ook 2 c# delphi command equivalent

我正在使用Delphi(转换代码)在C#中创建应用程序,但是我找到了一个我不认识的命令(shl),我想知道是否有任何与C#等效的命令.

提前致谢.

Pay*_*aya 7

Shl左移.使用<<C#运算符可以获得相同的效果.

例:

uint value = 15;              // 00001111
uint doubled = value << 1;    // Result = 00011110 = 30
uint shiftFour = value << 4;  // Result = 11110000 = 240
Run Code Online (Sandbox Code Playgroud)

  • 另一个有趣的事实,C/C#的`>>`运算符是一个算术移位,也就是说,它在无符号类型上从左移0,但在有符号类型上移1s,因此它总是除以2. Delphi的`shr`函数是一个逻辑转变,总是转入0.(那是C#4和Delphi 7的比较顺便说一下 - 我找不到Delphi的`shr`的正式定义. (7认同)
  • 有趣的事实:`x << y`也相当于`x*2到y'的幂.同样,`x >> y`除以2 y次 (2认同)