Lua 错误处理与pcall

学习目标:

--错误处理
print("YC ————————————> 01")
--~ local function add(a,b)
--~    assert(type(a) == "number", "a 不是一个数字")
--~    assert(type(b) == "number", "b 不是一个数字")
--~    return a+b
--~ end
--~ add(10)


--error
print("YC ————————————> 02")
--~ function funC( num )
--~     if num == 0 then
--~         error("程序发生错误")
--~         print("是否执行?")
--~     else
--~         return 100/m
--~     end
--~ end

--~ funC(0)
--~ print("程序继续")


--pcall 带参数
print("YC ————————————> 03")

pcall(function(i)
print(i)
end, 33)


--pcall
print("YC ————————————> 04")
function func()
    print("a")
    print(a[1])-- 出现错误
end

if pcall (funC) then
    print("程序继续")
else
    print("程序发生错误") -- 出错后继续调用
end
print("go on") --继续调用



--pcall 错误打印
print("YC ————————————> 05")
function test()
    print("a")
    print(a[1]) -- 错误,将原因打印
end

local b , r = pcall(test)
print(b) --false
print(r) -- attempt to index global 'a' (a nil value) a[1]   是nil值无法打印
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值