go 数组的指针如何遍历数组
时间: 2023-02-10 18:54:57 浏览: 139
Golang数组的传递详解
在 Go 语言中,可以使用指针遍历数组。例如,对于一个名为 `arr` 的数组,可以这样遍历它:
```
for i := 0; i < len(arr); i++ {
val := *(*int)(unsafe.Pointer(uintptr(unsafe.Pointer(&arr[0])) + uintptr(i)*unsafe.Sizeof(arr[0])))
fmt.Println(val)
}
```
请注意,这种方法使用了 Go 语言的 `unsafe` 包,并且在 Go 语言中,使用指针并不是很常见。通常情况下,可以使用简单的循环语句或者内置的 `range` 语句来遍历数组。
例如,可以使用以下方法遍历数组:
```
for i, val := range arr {
fmt.Println(i, val)
}
```
或者:
```
for _, val := range arr {
fmt.Println(val)
}
```
阅读全文