小编Hen*_*Lee的帖子

如何更快地进行这种按位操作?

代码很简单.

int foo(int a, int b, int c, int d, int e, int f, int g)
{    
    int r = (1 << a) | (1 << b) | (1 << c) | (1 << d) | (1 << e ) | (1 << f) | (1 << g);
    return r;
}
Run Code Online (Sandbox Code Playgroud)

假设所有参数都不大于30.

它似乎是一个非常原始的函数,但在使用"-Ofast"标志进行编译后,仍然需要28条指令来计算r.

是否有替代代码可以使这些按位运算更快?

c optimization bitwise-operators

1
推荐指数
1
解决办法
89
查看次数

标签 统计

bitwise-operators ×1

c ×1

optimization ×1