Lua 位操作库 bit.so编译安装

这篇博客介绍了如何在Lua中安装和使用LuaBitOp,一个用于位运算的C扩展模块。首先,从指定网址下载源码并进行编译,解决编译时缺少宏定义的问题,通过添加-DLUA_NUMBER_DOUBLE宏定义。接着,完成编译和安装过程,将库文件复制到默认库目录。最后,展示了使用LuaBitOp进行位运算的示例代码,包括位与、位或等操作。
摘要由CSDN通过智能技术生成

Lua的算术位操作,如与,或,非等,需要依赖一个c扩展模块:Lua BitOp

1,下载源码:http://bitop.luajit.org/download.html

2,解压及编译:make

编译失败,缺少一个宏定义,查看源码后,该宏应该是定义Lua的number类型为哪种类型,可以为double, 或int,或为float。我这里在Makefile里添加-DLUA_NUMBER_DOUBLE进行编译。

3,拷贝bit.so

make install 完成,库已经拷贝到默认库目录下:

 

4,例子

 

#!/usr/local/bin/lua

local bitop = require("bit")

print(bitop.tohex(10, -2))
print(bitop.tohex(10, -6))


print(bitop.tohex(1))
print(bitop.tohex(-1))             
print(bitop.tohex(0xffffffff))
print(bitop.tohex(-1, -8))    
print(bitop.tohex(0x21, 4))
print(bitop.tohex(0x87654321, 4))

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值