C++系列十四:结构体

C++中的结构体

一、结构体的定义

在C++中,结构体是一种自定义的数据类型,它允许我们将不同类型的数据组合在一起。结构体可以包含任意类型的数据,包括基本数据类型、指针、数组、其他结构体等。

定义结构体的语法如下:

struct 结构体名 {
    数据类型1 成员变量1;
    数据类型2 成员变量2;
    ...
};

二、结构体的使用

定义了结构体之后,我们就可以声明结构体类型的变量,并为其赋值。下面是一个简单的示例:

#include 
using namespace std;

struct Person {
    string name;
    int age;
};

int main() {
    Person p1; // 声明一个Person类型的变量p1
    p1.name = "Alice"; // 为p1的name成员变量赋值
    p1.age = 25; // 为p1的age成员变量赋值
    cout << "Name: " << p1.name << ", Age: " << p1.age << endl; // 输出p1的值
    return 0;
}

在上面的示例中,我们定义了一个名为Person的结构体,它包含两个成员变量:name和age。在main函数中,我们声明了一个Person类型的变量p1,并为其成员变量赋值。最后,我们输出了p1的值。

除了定义结构体类型之外,我们还可以使用结构体类型来定义数组、指针等。下面是一个示例:

#include 
using namespace std;

struct Person {
    string name;
    int age;
};

int main() {
    Person p1{"Bob", 30}; // 声明并初始化一个Person类型的变量p1
    Person p2 = {"Charlie", 35}; // 声明一个Person类型的变量p2,并使用初始化列表进行初始化
    cout << "Name: " << p1.name << ", Age: " << p1.age << endl; // 输出p1的值
    cout << "Name: " << p2.name << ", Age: " << p2.age << endl; // 输出p2的值
    return 0;
}

在上述示例中,我们使用结构体类型定义了两个变量p1和p2,并分别进行了初始化。初始化时,我们使用了初始化列表语法,将成员变量的值直接赋给变量。

除了定义变量之外,我们还可以使用结构体类型来定义函数。下面是一个示例:

#include 
using namespace std;

struct Person {
    string name;
    int age;
};

void printPerson(Person p) {
    cout << "Name: " << p.name << ", Age: " << p.age << endl;
}

int main() {
    Person p1{"Alice", 20};
    printPerson(p1); // 输出p1的值
    return 0;
}

在上面的示例中,我们定义了一个名为printPerson的函数,它接受一个Person类型的参数,并输出该参数的值。在main函数中,我们声明并初始化了一个Person类型的变量p1,然后将其作为参数传递给printPerson函数。

总结:结构体是一种非常有用的自定义数据类型,它可以让我们将不同类型的数据组合在一起,方便管理和使用。通过定义结构体类型、声明变量、初始化变量以及定义函数等方式,我们可以灵活地使用结构体来满足不同的需求。

你可能感兴趣的:(#,C++,万花筒,c++,开发语言)