What are structs in Go and how do you use them?

Beginner

Answer

Structs are custom types that group related data:

type Person struct {
    Name string
    Age  int
    City string
}

// Creating struct instances
p1 := Person{Name: "Alice", Age: 30, City: "NYC"}
p2 := Person{"Bob", 25, "LA"} // positional
p3 := &Person{Name: "Charlie", Age: 35} // pointer to struct

// Accessing fields
fmt.Println(p1.Name)
p1.Age = 31