将一个结构体中变量中的数据传递给另一个函数,有以下三种方法。需要的朋友可以过来参考下,希望对大家有所帮助
(1)用结构体变量名作为参数。
#include
#include
using namespace std;
struct Student{
string name;
int score;
};
int main(){
Student one;
void Print(Student one);
one.name="千手";
one.score=99;
Print(one);
cout<
cout<
return 0;
}
void Print(Student one){
cout<
cout<
}
这种方式值采取的“值传递”的方式,将结构体变量所占的内存单元的内存全部顺序传递给形参。在函数调用期间形参也要占用内存单元。这种传递方式在空间和实践上开销较大,如果结构体的规模很大时,开销是很客观的。
并且,由于采用值传递的方式,如果在函数被执行期间改变了形参的值,该值不能反映到主调函数中的对应的实参,这往往不能满足使用要求。因此一般较少使用