Go基础数据类型全解析
1. Go中的指针
Go支持指针,但不支持指针运算,而指针运算在像C这样的编程语言中常常是许多错误和漏洞的根源。指针本质上是变量的内存地址。若要获取指针所指向的值,需要对指针进行解引用操作,这通过在指针变量前使用 * 字符来实现。同时,在普通变量前使用 & 符号就能获取其内存地址。
下面通过一个简单的示例来说明指针和普通变量的区别:
package main
import "fmt"
func main() {
var num int = 10
var ptr *int = &num
fmt.Println("Value of num:", num)
fmt.Println("Memory address of num:", &num)
fmt.Println("Value of ptr:", ptr)
fmt.Println("Value pointed to by ptr:", *ptr)
}
在这个示例中, ptr 是指向 num 的指针。通过 &num 获取 num 的内存地址,将其赋值给 ptr 。使用 *ptr 可以获取 ptr 所指向的值。
若指针变量指向一个现有的普通变量,那么通过该
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



