【问题标题】:Debugging issue with fmt.Scanlnfmt.Scanln 的调试问题
【发布时间】:2019-02-13 04:06:18
【问题描述】:

我想调试一个非常简单的 go 程序(只是想看看 VSCode 是否/如何工作)

到目前为止,这是我的源代码:

package main

import (
    "fmt"
)

func main() {
    fmt.Printf("Please enter your name\n>>")
    name := "" //«breakpoint on this line»
    fmt.Scanln(&name)
    fmt.Println("Welcome to my awesome program, " + name + "!")
}

当我开始调试时,一切都很好,直到我点击下一行 (fmt.Scanln(&name)) 上的“跳过”按钮。

我的局部变量从列表中消失,我不能再点击“Step”按钮(只是暂停,什么都不做,重新启动和停止),如果我尝试在调试控制台中输入一些东西,什么也没有发生。然后当我停止调试时,它会告诉我

«whatever I entered»
*not available*

你知道我的错误是什么吗?任何帮助将不胜感激。

【问题讨论】:

    标签: debugging go visual-studio-code


    【解决方案1】:

    看起来这是 VSCode 使用 delve 调试器实现的限制。也许很快就会被允许,如果你在外部运行 delve,它现在就可以工作了。请参阅此处的讨论:https://github.com/Microsoft/vscode-go/issues/219

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-12-06
      • 2020-11-08
      • 2023-03-14
      • 2021-03-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多