「Go言語」Struct構造体を使うサンプル

2022年1月18日

書式
1.構造体の定義
type 構造体名 struct {
メンバー変数名 データ型
}
2.構造体の変数名の初期化
変数名 := 構造体名{値1,値2,…}
3.構造体の変数名.メンバー=値1

使用例

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
package main
import "fmt"
//構造体の定義
type Student struct {
StId int
StName string
age int
}
func main() {
cftA := Student{}
fmt.Printf("%T\n", cftA)
fmt.Println(cftA)
cftB := Student{1001, "山田太郎", 23}
fmt.Printf("%T\n", cftB)
fmt.Println(cftB)
fmt.Println("***************")
// データ更新
cftB.StName = "川崎次郎"
cftB.age = 28
fmt.Println(cftB)
fmt.Println("***************")
// 構造体ポインタを利用して値を更新
kn := &cftB
kn.age = 32
fmt.Printf("%T\n", kn)
fmt.Println(kn)
fmt.Println(cftB)
}
package main import "fmt" //構造体の定義 type Student struct { StId int StName string age int } func main() { cftA := Student{} fmt.Printf("%T\n", cftA) fmt.Println(cftA) cftB := Student{1001, "山田太郎", 23} fmt.Printf("%T\n", cftB) fmt.Println(cftB) fmt.Println("***************") // データ更新 cftB.StName = "川崎次郎" cftB.age = 28 fmt.Println(cftB) fmt.Println("***************") // 構造体ポインタを利用して値を更新 kn := &cftB kn.age = 32 fmt.Printf("%T\n", kn) fmt.Println(kn) fmt.Println(cftB) }
package main

import "fmt"
//構造体の定義
type Student struct {
      StId    int
      StName  string
      age   int
}

func main() {
      cftA := Student{}
      fmt.Printf("%T\n", cftA)
      fmt.Println(cftA)

      cftB := Student{1001, "山田太郎", 23}
      fmt.Printf("%T\n", cftB)
      fmt.Println(cftB)
      fmt.Println("***************")
   // データ更新
      cftB.StName = "川崎次郎"
      cftB.age = 28
      fmt.Println(cftB)
    fmt.Println("***************")
      // 構造体ポインタを利用して値を更新
      kn := &cftB
      kn.age = 32
      fmt.Printf("%T\n", kn)
      fmt.Println(kn)
      fmt.Println(cftB)
}

実行結果
C:\study\skill\golang>go run 107.go
main.Student
{0 0}
main.Student
{1001 山田太郎 23}
***************
{1001 川崎次郎 28}
***************
*main.Student
&{1001 川崎次郎 32}
{1001 川崎次郎 32}

Go言語

Posted by arkgame