调用Lua脚本tostring(xxx)报attempt to call a nil value (global ‘tostring‘

在c++程序里调用Lua脚本, 脚本中用到了转字符串 tostring(xxx)

Lua 复制代码
str = "test" 
function output(a,b,c)
    d = "a:"..tostring(a).."b:"..tostring(b).."c"..tostring(c)
    return d 
end

实际运行会报错:

attempt to call a nil value (global 'tostring')错误

解决方法:

在c++代码的L = luaL_newstate();下添加:

Lua 复制代码
luaopen_base(L); 或者 luaL_openlibs(L);
相关推荐
C语言小火车2 小时前
C++ 堆排序深度精讲:基于完全二叉树的选择排序进化,最坏情况 O(n log n) 的稳定王者
开发语言·c++·算法·排序算法·堆排序
北冥you鱼2 小时前
abigen 最佳实践:从入门到精通,高效生成 Go 语言合约绑定
开发语言·golang·区块链
ALex_zry3 小时前
C++26 std::complex 结构化绑定详解:auto [re, im] = c
c语言·开发语言·c++
她说..3 小时前
Java 默认值设置方式
java·开发语言·后端·springboot
忧郁的紫菜4 小时前
基础实现:单篇 Markdown 转 Word
开发语言·c#·word
甜美的小天鹅4 小时前
Swifter C#之inline还是不inline,这是个问题
开发语言·c#
小短腿的代码世界4 小时前
Qt Bluetooth源码深度解析:从HCI协议到跨平台API的完整架构
开发语言·qt·架构
北冥you鱼4 小时前
Go 语言读取链上数据:从基础到实战
开发语言·后端·golang
nianniannnn4 小时前
c++复习自存--继承
开发语言·c++
叩码以求索6 小时前
经典算法实例分析:写字符串需要的行数
开发语言·javascript·ecmascript