下面方法在任何语言都适用。

package main

import "fmt"

/*
1.创建函数
2.传参
3.数据更改观察结果
*/

func main() {
	var (
		a int = 10	//整形
		b *int		//指针
		c int = 20
	)
	b = &c
	fmt.Println("处理前 a =",a)
	fmt.Println("处理前 *b=",*b)
	test(a,b)
	fmt.Println("处理后 a =",a)
	fmt.Println("处理后 *b=",*b)
}

//测试函数
func test(a int, b *int) {
	a++	//自增,值类型只在函数体内部生效,不影响外部
	*b++	//自增,指针类型影响源
}

// 结果:a 没有变化,值类型;b 结果变化,引用类型。
处理前 a = 10
处理前 *b= 20
处理后 a = 10
处理后 *b= 21