如何限制Lua字符串中的字符数量

时间:2015-11-28 19:25:09

标签: c lua lua-api

我有一个问题:如何使lua_tostring功能限制条目数量。

例如8个字符限制:

poppy_name = "command"; // OK, within the limit;
poppy_name = "commander"; // Fail, Is out of range, show a message the permitted limit.

我搜索了我再也找不到了,有没有办法限制lua_tostring

1 个答案:

答案 0 :(得分:3)

使用lua_tolstring获取字符串长度,如果字符串太长则使用lua_errorluaL_error

size_t arg_len;
lua_tolstring(L, 1, &arg_len);
if (arg_len > 8) return luaL_error(L, "argument too long");