golang 结构体

/*
 go结构体
 go语言结构体数据类型
 是将各个类型的变量定义的集合
 通常用来表示记录
*/

package main

import (
    "fmt"
)

/*
   知识点:
     type struct{

     }
     里面的变量之间不需要加逗号
*/
//这个person结构体有name和age成员
type person struct {
    name string
    age  int
}

func main() {
    /*
       这个语法创建一个新结构体变量
    */
    p1 := person{"Bob", 20}
    fmt.Println(p1)

    /*
       也可以使用成员:值的方式来初始化结构体变量
    */
    p2 := person{name: "Alice", age: 30}
    fmt.Println(p2)

    //未显示赋值的成员初始值为零值
    p3 := person{name: "Fred"}

    //可以使用&来获取结构体变量的地址
    fmt.Println(&person{name: "", age: 1})

    //使用点号来访问结构体成员
    s := person{name: "Sean", age: 50}
    fmt.Println(s.name)

    //结构体指针也可以使用点号来访问结构体成员
    //go语言会自动识别出来
    sp := &s
    fmt.Println(sp.age)

    //结构体成员变量的值是可以改变的
    sp.age = 51
    fmt.Println(sp.age)
}
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值