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

C 如何限制Lua字符串中的字符数,c,lua,lua-api,C,Lua,Lua Api,我有一个问题:如何使lua\u tostring函数限制条目的数量 例如,8个字符限制: poppy_name = "command"; // OK, within the limit; poppy_name = "commander"; // Fail, Is out of range, show a message the permitted limit. 我搜索了我再也找不到了,有没有办法限制lua\u-tostring?使用lua\u-tostring获取字符串长度,如果字符串太长,则

我有一个问题:如何使
lua\u tostring
函数限制条目的数量

例如,8个字符限制:

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

我搜索了我再也找不到了,有没有办法限制
lua\u-tostring

使用
lua\u-tostring
获取字符串长度,如果字符串太长,则使用
lua\u-error
luaL\u-error

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

@MarcosSilva
size\u t*myLen;卢奥·托尔斯林(L、1和迈伦);如果(myLen>8)引起地狱
通过您的示例理解hjpotter92,则案例已解决。感谢you@MarcosSilva如果他的答案对你有帮助,请按旁边的绿色复选标记接受,这是为了帮助有相同问题的未来用户更快地找到答案。在答案中添加了一个示例,thank you@hjpotter92应该是
size\t arg\u len
,而不是
size\t*arg\u len
。很遗憾,要修复的编辑太短。。。