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
などを使うべきである