SHIFT
← _G
code:lua
SHIFT(x,a)
table:
#1 integer
#2 integer
戻り値 integer a & b
a,bのビット積を返す
実装例
code:cpp
int l_SHIFT(lua_State* L) {
int x = luaL_checkinteger(L,1);
int a = luaL_checkinteger(L,2);
lua_pushinteger(L, a<0 ? x>>-a : x<<a);
return 1;
}
tips
LuaJITやBitOPが使える環境ではbit.lshiftやbit.rshiftなどを使うべきである