簡體   English   中英

LuaJIT FFI有多難?

[英]How difficult is the LuaJIT FFI?

我最近調查了Lua,看起來真的很棒。 唯一令人煩惱的是它缺乏(標准)庫。 但隨着JIT編譯器出現了一個很好的FFI C接口。

來自java背景,我試圖盡可能地避免使用C,所以我的問題是:有任何人對LuaJIT有一些經驗,特別是它的FFI接口,以及為幾乎沒有知識的人設置庫有多困難C?

看起來對我來說很簡單,Mike Pall在這里有一些很好的教程,lua郵件列表中還包含一些很好的例子,所以查看檔案也是如此

為幾乎沒有C知識的人建立一個圖書館有多難?

真的很容易 首先,您需要聲明您想要使用的函數。 然后,加載目標庫並將其分配給Lua變量。 使用該變量來調用外部函數。

這是一個使用C的數學庫函數powf的例子。

local ffi = require("ffi")

-- Whatever you need to use, have to be declared first
ffi.cdef([[
   double powf(double x, double y); 
]])

-- Name of library to load, i.e: -lm (math)
local math = ffi.load("m")

-- Call powf
local n, m = 2.5, 3.5
print(math.powf(n, m))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM