lua 中字符串是一个数组么

 我来答
可爱小不点year
2017-09-02 · TA获得超过803个赞
知道小有建树答主
回答量:859
采纳率:89%
帮助的人:783万
展开全部
不是。
数组操作
int l_map(lua_State *L){
int i,n;
//第一个参数必须是table
luaL_checktype(L,1,LUA_TABLE);
//第二个参数必须是一个函数
lua_checktype(L,2,LUA_FUNCTION);

//获取table的大小
n = lua_objlen(L,1);

for(i = 1;i<=n;i++){
//压入f
lua_pushvalue(L,2);
//压入t[i]
lua_rawgeti(L,1,i);
//调用f(t[i])
lua_call(L,1,1);
//t[i] = 结果
lua_rawseti(L,1,i);
}

return 0;
}
字符串操作
当一个C函数从Lua收到一个字符串参数时,必须遵守两条规则:
* 不要再访问字符串时从栈中弹出它
* 不要修改字符串
//把一个字符串s的子串传递给Lua
//区间[i,j]
lua_pushlstring(L,s+i,j-i+1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式