dbg模式下观测到,18行跳到21行,a的数值不一样,这是怎么原理?
新手不解,求骂求指导!
dbg模式下观测到,18行跳到21行,a的数值不一样,这是怎么原理?
新手不解,求骂求指导!
当a=2时,b= aaa(a-1)
,此时a=2没问题吧?不管aaa里面发生什么,不会改变a的值 2。
在这个aaa函数中,传入的参数时a-1=1,对该函数中的变量a,a == 1
成立,return 1
,所以b= aaa(a-1)
得到的是b = 1
,a的值没变 是2。
所以 不存在a的值变了,因为两个函数中的a压根就不是同一个,你换个参数意思也一样
a = 2
b = aaa(a-1)
func aaa(b int) int{
if b == 1{
return 1
}
}