重複の可能性:
埋め込まれたLuaのprint()のリダイレクト/再定義
私はLuaを初めて使用し、かなり混乱しています。私はこれを見ましたが、5.2で動作するかどうかはわかりません。
_ENVテーブル(?)について読んだことがありますが、これがそれと関係があるかどうかはわかりません。
次に、質問に移ります。C/ C ++で、Lua 5.2の組み込みの印刷関数をリダイレクトして、独自のC / C ++関数を呼び出すにはどうすればよいですか?
Lua 5.2マニュアルから:
Lua keeps a distinguished environment called the global environment.
This value is kept at a special index in the C registry (see §4.5).
In Lua, the variable _G is initialized with this same value.
したがって、リンクした質問に対するこの回答は、luaL_register
への呼び出しをへの呼び出しに置き換えると機能しluaL_setfuncs
ます。