【问题标题】:Question about using bitshift operators on int关于在 int 上使用位移运算符的问题
【发布时间】:2023-02-15 03:25:27
【问题描述】:

我是初学者,所以不要对我的简单问题生气,但假设我有一个 int 变量 假设 a,我做 a<<3 是否等于 a*2^3 = a*8 因为我读到移位运算符将变量与 2^x 相乘。 我是正确的还是我误读了这种情况? 谢谢!

【问题讨论】:

  • 是的,除非它溢出。

标签: c integer bit-shift


【解决方案1】:

左移简单的说就是将设定的二进制值向左移动一些地方。例如,3 的二进制值为 11,因此执行 3<<3 意味着我们将这些设置位 (1) 左移到左侧 3 个位置。所以 11 变成 11000 等于 24。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-20
    • 2011-04-17
    • 2013-08-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多