定义结构体变量字符数组类型
时间: 2023-03-30 11:03:24 浏览: 69
可以定义结构体变量的字符数组类型,例如:
struct Person {
char name[20];
int age;
};
struct Person p1 = {"John", 25};
printf("Name: %s, Age: %d", p1.name, p1.age);
这里定义了一个名为 Person 的结构体,其中包含一个字符数组类型的 name 字段和一个整型的 age 字段。然后定义了一个名为 p1 的结构体变量,并初始化了它的 name 和 age
相关问题
golang结构体中定义数组
在Golang中,可以在结构体中定义数组。下面是一个示例:
```go
package main
import "fmt"
type Person struct {
Name string
Age int
Hobbies [3]string
}
func main() {
p := Person{
Name: "John",
Age: 30,
Hobbies: [3]string{
"Reading",
"Playing guitar",
"Cooking",
},
}
fmt.Println(p.Name)
fmt.Println(p.Age)
fmt.Println(p.Hobbies)
}
```
在上面的示例中,我们定义了一个名为Person的结构体,其中包含了Name、Age和Hobbies三个字段。Hobbies字段是一个长度为3的字符串数组。在main函数中,我们创建了一个Person类型的变量p,并为其各个字段赋值。然后,我们打印出p的Name、Age和Hobbies字段的值。
运行上述代码,输出结果如下:
```
John
30
[Reading Playing guitar Cooking]
```
结构体变量可以作为数组元素
是的,结构体变量可以作为数组元素。在定义结构体类型时,可以使用该类型作为数组的元素类型,然后定义相应大小的数组。例如:
```
struct Person {
char name[20];
int age;
};
int main() {
struct Person people[3] = {{"Alice", 20}, {"Bob", 30}, {"Charlie", 40}};
printf("%s is %d years old.\n", people[0].name, people[0].age);
return 0;
}
```
在上面的例子中,我们定义了一个名为 `Person` 的结构体类型,它包含了一个长度为 20 的字符串和一个整数。然后我们定义了一个 `people` 数组,其中每个元素都是 `Person` 类型的结构体变量。我们可以像访问普通数组一样访问 `people` 数组中的元素,并且可以通过点号运算符访问结构体变量中的成员。