天天看點

C++結構體做函數參數

結構體做函數參數

作用:将結構體作為參數向函數隻能夠傳遞

傳遞方式有兩種:

*

值傳遞

*

位址傳遞

#include <iostream>
#include <string>
using namespace std;
//定義學生結構體
struct student
{
       //姓名
       string name;
       //年齡
       int age;
       //分數
       int score;
};
//列印學生資訊函數
//1.值傳遞
void printStudent1(struct student s)
{
       s.age = 100;
       cout << "子函數中 姓名:" << s.name
              << " 年齡:" << s.age
              << " 分數:" << s.score << endl;
}
//位址傳遞
void printStudent2(struct student *p)
{
       p->age = 200;
       cout << " 子函數2中 姓名:" << p->name
              << " 年齡:" << p->age
              << " 分數:" << p->score << endl;
}
int main()
{
       //結構體做函數參數
       //将學生傳入到一個參數中,列印學生身上的所有資訊
       //建立結構體變量
       struct student s;
       {
              s.name = "張三";
              s.age = 21;
              s.score = 85;
              //printStudent1(s);
              printStudent2(&s);
              cout << "main函數中列印 姓名:" << s.name
                     << " 年齡:" << s.age
                     << " 分數:" << s.score << endl;
       };
       return 0;
}      

繼續閱讀