您的位置 首页 golang

数组指针&指针数组

package mainimport "fmt"func main() {    /*        数组指针: 首先是一个指针,一个数组的地址            存储的是数组的地址             *[4]int        指针数组:             首先是一个数组,存储的数据类型是指针             [4]*type             *[5]float64    指针,一个存储了5个浮点型数据的数组的指针             *[3]string     指针,一个存储了3个字符串             [3]*string     数组,存储了3个字符串的指针地址             [5]*float64    数组,存储了5个浮点型的数组地址             *[5]*float64   指针,一个数组的指针,数组中存储5个float64的数据的地址             *[3]*string    指针,一个数组指针,存储了3个字符串地址             **[4]sting     指针,存储了4个字符串数据的数组的指针的指针             **[4]*string   指针,存储了4个字符串的数据的地址的数组,的指针的指针                 */    // 1.创建一个普通的数组    arr1 := [4]int{1, 2, 3, 4}    fmt.Println(arr1)    //2. 创建一个指针,存储该数组的地址====> 数组指针    var p1 *[4]int    p1 = &arr1    fmt.Println(p1)    fmt.Printf("%p\n", p1)    //3. 根据数组指针,操作数组    (*p1)[0] = 100 // 简写 p1[0]=100    fmt.Println(arr1)    // 4. 指针数组    a := 1    b := 2    c := 3    d := 4    arr2 := [4]int{a, b, c, d}    arr3 := [4]*int{&a, &b, &c, &d}    fmt.Println(arr2)    fmt.Println(arr3)    arr2[0] = 200    fmt.Println(a)    *arr3[0] = 300    for i := 0; i < len(arr3); i++ {        fmt.Println(*arr3[i])    }    fmt.Println(a)}

文章来源:智云一二三科技

文章标题:数组指针&指针数组

文章地址:https://www.zhihuclub.com/5893.shtml

关于作者: 智云科技

热门文章

网站地图