结构体(struct)是由一系列具有相同 类型 或不同类型的数据构成的数据集合。
在 C++ 中,结构体(struct)指的是一种数据结构,是 C++ 中聚合数据类型(aggregate data type)的一类。结构体可以被声明为 变量、指针 或 数组 等,用以实现较复杂的数据结构。
结构体同时也是一些元素的集合,这些元素称为结构体的成员(member),且这些成员可以为不同的类型,成员一般用名字访问。
struct structName{
fieldType1 filed1;
fieldType2 filed2;
fieldType3 filed3;
};
参数 | 描述 |
---|---|
struct | 定义结构体使用的关键字。 |
structName | 结构体名。 |
fieldType1 | 结构体成员变量的类型。 |
filed1 | 结构体成员变量名。 |
我们使用 struct 定义了一个结构体 structName,该结构体有三个字段,字段名分别为 filed1、filed2 和 filed3,它们的类型分别为 fieldType1、fieldType2 和 fieldType3。
定义结构体时,每个字段名后面都需要使用 ;
结尾,同时,结构体定义的最后的大括号后面,同样需要使用 ;
结尾,如果没有分号,则程序会报错。
定义结构体变量
#include <iostream>
using namespace std;
struct HaiCoder{
int age;
char *name;
char *website;
};
int main()
{
cout << "嗨客网(www.haicoder.net)\n" << endl;
HaiCoder haicoder;
haicoder.age = 109;
haicoder.name = "HaiCoder";
haicoder.website = "www.haicoder.net";
cout << "Age = " << haicoder.age << " Name = " << haicoder.name << " WebSite = " << haicoder.website << endl;
return 0;
}
程序运行后,控制台输出如下图所示:
我们首先,定义了一个 HaiCoder 结构体,该结构体有三个字段,分别为 int 类型 的 age,字符串 类型的 name 和字符串类型的 website。
接着,在 main 函数里面,我们定义了一个 HaiCoder 类型的结构体的 变量 haicoder,并分别给这个结构体变量的成员赋值,最后,并使用 cout 打印了结构体成员的变量。
在 C++ 中,结构体(struct)指的是一种数据结构,是 C++ 中聚合数据类型(aggregate data type)的一类。结构体可以被声明为变量、指针或数组等,用以实现较复杂的数据结构。
结构体同时也是一些元素的集合,这些元素称为结构体的成员(member),且这些成员可以为不同的类型,成员一般用名字访问。