gpt4 book ai didi

go - 打印一片结构的内容

转载 作者:数据小太阳 更新时间:2023-10-29 03:12:42 25 4
gpt4 key购买 nike

如果一开始是错误的,我们深表歉意。我正在尝试学习 Golang,并且正在研究各种概念。我很确定我在这里混淆了一些东西......我正在尝试编写一个简单的程序来创建一个名为“person”的结构,它接受名字、姓氏和年龄。我希望用户能够指定他们将进入 struct person slice 的人数,然后遍历输入的人数,获取输入并将其存储在 person slice 中。然后,我希望能够将其中一个“人”打印到终端,例如第 6 个(假设输入了很多人)。这是我目前所拥有的:

package main

import "fmt"

func main() {
var people int

type person struct {
firstName string
lastName string
age int
}

listOfPeople := make([]person, 10)

fmt.Println("Please enter the number of users you would like to create:")
fmt.Scan(&people)

for i := 0; i < people; i++ {
var a, b string
var c int
fmt.Println("Please enter a person's information: ")
fmt.Print("First Name: ")
fmt.Scan(&a)
fmt.Print("Last Name: ")
fmt.Scan(&b)
fmt.Print("Age: ")
fmt.Scan(&c)
listOfPeople = append(listOfPeople, person{a, b, c})
}
//Print the contents of listOfPeople
}

代码注释“打印 listOfPeople 的内容是我希望能够打印一个‘人’的地方。我已经尝试了一些东西,但没有打印或编译失败。没有尝试从中打印出一个人listOfPeople 代码编译并运行。我知道我在这里遗漏了一些东西。感谢任何帮助。我意识到这段代码可能没有优化或者可能有更简单的方法,所以如果有请随时纠正我。谢谢

最佳答案

您要追加到已分配的 10 个人的 slice 中,因此您可能认为您追加的第一个人在第 0 个索引上,但实际上是在第 10 个索引上。

https://play.golang.org/p/bPXsdWk9sa

你可能想要的是这样的东西

https://play.golang.org/p/kcfzJ4M0Wp

关于go - 打印一片结构的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46983693/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com