4
在這個程序中,如何使用調試器中止執行並打印i的值?轉:使用gdb打印變量
package main
import "fmt"
func main() {
x := "abc"
i := 3
fmt.Println(i)
fmt.Println(x)
}
我無法打印i。不過,我可以打印X:
go build test.go
gdb test
[...]Reading symbols from /home/ned/test...done.
(gdb) br 9
(gdb) run
(gdb) p i
No symbol "i" in current context.
(gdb) p x
$1 = "abc"
這聽起來像變量'我'可能已被編譯器優化不存在。你嘗試過調試版嗎? – sblom
@sblon如何進行調試構建? –
@SCL運行'去建立-gcflags「-N''禁用的優化。 – axw