Lua C API:如何在字符串中间插入空字符?

5

通常情况下,我会直接使用

lua_pushstring(lua_State* L, const char* s);

然而,我想要推送的字符串可能含有空字符。如何使其正常工作?

1个回答

13

使用lua_pushlstring

void lua_pushlstring (lua_State *L, const char *s, size_t len);

将指向s的字符串及其长度len推入栈中。Lua会创建(或重用)给定字符串的内部拷贝,因此在函数返回后,指向s的内存可以立即释放或重用。该字符串可以包含嵌入的零。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接