lua_pushfstring
フォーマットされた文字列をスタックにプッシュします。
[-0, +1, m]
c
const char *lua_pushfstring (lua_State *L, const char *fmt, ...);
説明
フォーマットされた文字列をスタックにプッシュし、この文字列へのポインタを返します。C関数sprintf
に似ていますが、いくつか重要な違いがあります:
結果のためのスペースを割り当てる必要はありません。結果はLuaの文字列であり、Luaがメモリの割り当て(およびガーベージコレクションによる解放)を行います。 変換指定子はかなり制限されています。フラグ、幅、精度はありません。変換指定子は'%%'(文字列に'%'を挿入)、'%s'(サイズ制限なしのゼロ終了文字列を挿入)、'%f'(lua_Number
を挿入)、'%p'(ポインタを16進数で挿入)、'%d'(int
を挿入)、'%c'(int
を文字として挿入)のみを使用できます。
サンプルコード
c
lua_pushfstring(L, "値は%dです", 42);
このコードは、文字列「値は42です」をフォーマットし、スタックにプッシュします。
互換性
- Lua5.1
関連項目
- lua_pushstring
- lua_pushlstring