用C++调用Lua时,无论怎么调,都发现程序在调用PCall的时候会触发这个错误
这里记录下自己的发现过程:
- 在pcall之前打印了下 lua_tonumber 取出来的内容,发现没有压进去,考虑文件读取失败
- 使用C++验证文件路径没有问题,此时寻找在调用Lua文件时出现问题的可能
- 使用方法
int bRet = luaL_loadfile(L,"E:/LearnCPP/LearnCPP/LearnCPP/hello.lua");
if(bRet)
{
fprintf(stderr, "\nFATAL ERROR:%s\n\n", lua_tostring(L, -1));
exit(1);
return 0;
}
可以看到具体的错误内容:
FATAL ERROR:E:/LearnCPP/LearnCPP/LearnCPP/hello.lua:1: unexpected symbol near '?
- 在Lua中无论怎么改,都会报这个错,网上一搜才发现是Lua文件格式问题;https://blog.51cto.com/tulipmym/1708238
- 使用NotePad++修改文件格式为 UTF-8 无 BOM格式的就可以了
- 草
本文记录了一次使用C++调用Lua过程中遇到的文件加载错误,并详细解释了解决该问题的过程。通过排查发现,错误源自Lua文件的编码格式不正确,最终通过将文件转换为UTF-8无BOM格式成功解决问题。
1786

被折叠的 条评论
为什么被折叠?



