21xrx.com
2024-12-22 21:08:19 Sunday
登录
文章检索 我的文章 写文章
C++如何输出结构体?
2023-07-11 02:44:09 深夜i     --     --
C++ 输出 结构体

在C++中,结构体是一种自定义数据类型,可用于组织并存储不同类型的数据。输出结构体的过程与输出普通变量的过程类似,但需要注意一些细节。

首先,要定义结构体类型。以下是一个例子:


struct Person {

  int age;

  char name[20];

};

这定义了一个名为Person的结构体类型,该结构体包含一个整型变量age和一个字符数组name。

接下来,我们可以定义一个Person类型的变量并初始化它:


Person p = 25;

现在,我们可以使用cout语句输出结构体的成员值。直接输出结构体变量p通常会输出其内存地址,而不是它的成员:


cout << p;  // 输出地址

为了输出结构体的成员,我们需要访问该成员所在的位置。这需要使用点运算符。


cout << "Age: " << p.age << " Name: " << p.name << endl;

在此示例中,我们使用点运算符访问结构体变量p中的age和name成员,以便输出这些成员的值。

注意,在输出字符数组时,需要使用字符串格式化符号%s。这是因为字符数组不是标量类型,而是用于保存字符串的一种特殊数组类型。以下是一个示例:


cout << "Name: " << p.name << endl; // 错误:输出地址

cout << "Name: " << "%s" << p.name << endl; // 正确:输出字符串

我们可以使用一个循环来遍历结构体数组,输出每个结构体的成员值。以下是一个完整的示例:


#include <iostream>

using namespace std;

struct Person {

  int age;

  char name[20];

};

int main()

{

  Person people[3] = { "John", "Jane", 20};

  for (int i = 0; i < 3; i++) {

    cout << "Person " << i+1 << ": " << endl;

    cout << "Age: " << people[i].age << endl;

    cout << "Name: " << people[i].name << endl;

  }

  return 0;

}

在此示例中,我们定义了一个Person类型的数组people,并初始化了其中的三个元素。然后,我们使用循环遍历数组,输出每个结构体的成员。

总结:

- 输出结构体的成员需要使用点运算符。

- 当输出字符数组时,需要使用%s格式化符号。

- 可以使用循环输出结构体数组的每个元素。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复