http://jn1inl.blog77.fc2.com/blog-entry-2247.html great site
local ffi = require("ffi")
ffi.cdef[[
int rand(void);
int getchar(void);
double sqrt(double);
]]
print( ffi.C.rand() ) -- 乱数生成
print( ffi.C.getchar() ) -- キーボード1文字入力
print( ffi.C.sqrt(3.0) ) -- 平方根算出
luajit でないとできん芸当(本家LUAでは、ちとややこしい)
https://densan-labs.net/_downloads/lua.pdf にややこしいこと書いてある
DLL連携もすばらしく簡単だった!!L
http://pats-hico.blogspot.jp/2013/09/mingw-gcc-dll.html great site
int Add( int x, int y ){ return x+y; } // hoge.c
gcc -shared -o libhoge.dll hoge.c
local ffi = require'ffi' -- こう記述しても可
ffi.cdef[[
int Add( int, int );
]]
k_lib = ffi.load( 'libhoge' )
print( k_lib.Add( 2, 3 ) )