作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我之前发表过一篇关于尝试从 C 调用 lua 函数的帖子。您可以在这里查看:
Lua: getting global function failing after loading file
如您所见,我正在加载 lua 文件,然后尝试获取函数并调用它。一位读者建议我解决该问题的方法是更改为 dofile 而不是加载文件,因为您需要执行脚本才能访问这些功能。但这不是手头的问题......
无论使用dofile还是loadfile,当我调用lua_getglobal(L, "abc");
我的程序崩溃了...
调用堆栈:
> Translation.exe!luaS_newlstr(lua_State * L=0xcccccccc, const char * str=0x00460924, unsigned int l=3) Line 84 + 0x3 bytes C
Translation.exe!lua_getfield(lua_State * L=0xcccccccc, int idx=-10002, const char * k=0x00460924) Line 551 + 0x20 bytes C
Translation.exe!LanguageShovel::FileFound(std::basic_string<char,std::char_traits<char>,std::allocator<char> > path="C:\Loud\Resolution\orchid\source\EAWResolutionApplication.cpp") Line 32 + 0x16 bytes C++
崩溃于:
for (o = G(L)->strt.hash[lmod(h, G(L)->strt.size)];
o != NULL;
o = o->gch.next) {
在Lua库的lstring.c文件中。我不知道这个 lua 源代码到底发生了什么。你认为这可能是一个 lua 错误吗?还是我只是做错了?
运行:Windows xp 32 位。
最佳答案
L=0xcccccccc
表明您没有将 Lua 状态变量正确传递给此函数(或者它丢失了 lua_open
和 之间的某处) lua_getglobal
调用)。
关于c++ - lua_getglobal 崩溃程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6754778/
我之前发表过一篇关于尝试从 C 调用 lua 函数的帖子。您可以在这里查看: Lua: getting global function failing after loading file 如您所见,
我是一名优秀的程序员,十分优秀!