21xrx.com
2024-12-22 20:16:37 Sunday
登录
文章检索 我的文章 写文章
C++中使用结构体作为函数参数
2023-07-10 21:05:36 深夜i     --     --
C++ 结构体 函数参数

C++是一种高级编程语言,它可以让程序员编写复杂的程序,并且可以使用结构体作为函数参数。结构体是一种数据类型,它可以容纳不同类型的数据,并可以对它们进行操作。下面将介绍如何在C++中使用结构体作为函数参数。

首先,我们需要定义一个结构体。结构体的定义方式如下:


struct Student

  string name;

  int age;

  double score;

;

在这个例子中,我们定义了一个名为“Student”的结构体,它包括三个变量:一个字符串类型的名字、一个整数类型的年龄,以及一个双精度类型的成绩。

接下来,我们可以把结构体作为函数的参数传递。例如,我们可以编写一个函数来输出学生的信息:


void printStudent(Student s)

  cout << "Name: " << s.name << endl;

  cout << "Age: " << s.age << endl;

  cout << "Score: " << s.score << endl;

在这个函数中,我们将一个结构体作为参数传递,然后输出它的成员变量。我们可以在主函数中创建一个结构体,并将其作为参数传递给这个函数:


int main() {

  Student s1 = 92.5;

  printStudent(s1);

  return 0;

}

在这个例子中,我们创建了一个名为“s1”的结构体,并且将其成员变量初始化为“Tom”、“18”和“92.5”。然后我们调用了函数“printStudent”,并将结构体“s1”作为参数传递给它。

除了作为参数传递之外,我们还可以使用指向结构体的指针作为函数参数。例如,我们可以编写一个函数来修改学生的成绩:


void modifyScore(Student* s, double newScore)

  s->score = newScore;

在这个函数中,我们传递了一个指向结构体的指针,并使用箭头运算符“->”来访问结构体的成员变量。我们可以在主函数中创建一个结构体,并将其指针作为参数传递给这个函数:


int main() {

  Student s1 = 92.5;

  modifyScore(&s1, 95.0);

  printStudent(s1);

  return 0;

}

在这个例子中,我们创建了一个名为“s1”的结构体,并且将其成员变量初始化为“Tom”、“18”和“92.5”。然后我们调用了函数“modifyScore”,并将结构体“s1”的地址作为参数传递给它。这个函数将结构体“s1”的成绩修改为“95.0”。最后我们再次调用“printStudent”的函数来输出修改后的学生信息。

总之,C++中使用结构体作为函数参数是一种非常方便的方式,因为它允许我们在函数中对结构体进行操作,并且可以避免在函数中重复定义结构体。无论是传递结构体本身还是指向它的指针,都可以实现这个目的。

  
  

评论区

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