为了账号安全,请及时绑定邮箱和手机立即绑定

IF 语句下面的代码永远不会执行

IF 语句下面的代码永远不会执行

Go
largeQ 2021-09-21 15:09:16
我的代码中有一部分具有意外行为。. . .fmt.Println("Error:", err)if err == nil {    return err}fmt.Println("Done category"). . .上面的部分有以下输出Error: <nil>if 语句下面的代码永远不会执行。如果我删除 if 语句,代码会按预期运行。参考:https : //github.com/skarllot/flogviewer/blob/master/wlog/parser.go#L138
查看完整描述

1 回答

?
繁星点点滴滴

TA贡献1803条经验 获得超3个赞

让我们一步一步来。


fmt.Println("Error:", err)

如果输出是Error: <nil>.. 那么你的err变量是nil.


if err == nil {

    return err

}

这是说..“如果err变量是nil(它是..我们在上面确定的)......然后返回nil值。


此时..你的函数已经返回..所以它下面的任何东西都不会运行。


也许你的意思是这条线?:


if err != nil {

//     ^^ NOT equal?


查看完整回答
反对 回复 2021-09-21
  • 1 回答
  • 0 关注
  • 221 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信