Cấu trúc và chức năng của C++

Trong bài viết này, bạn sẽ tìm thấy các ví dụ có liên quan để chuyển cấu trúc làm đối số cho một hàm và sử dụng chúng trong chương trình của bạn.

Các biến cấu trúc có thể được truyền cho một hàm và được trả về theo cách tương tự như các đối số thông thường.

Truyền cấu trúc cho hàm trong C ++

Một biến cấu trúc có thể được truyền cho một hàm theo cách tương tự như đối số bình thường. Hãy xem xét ví dụ này:

Ví dụ 1: Cấu trúc và chức năng C ++

#include <iostream>
using namespace std;

struct Person {
    char name[50];
    int age;
    float salary;
};

void displayData(Person);   // Function declaration

int main() {
    Person p;

    cout << "Enter Full name: ";
    cin.get(p.name, 50);
    cout << "Enter age: ";
    cin >> p.age;
    cout << "Enter salary: ";
    cin >> p.salary;

    // Function call with structure variable as an argument
    displayData(p);

    return 0;
}

void displayData(Person p) {
    cout << "\nDisplaying Information." << endl;
    cout << "Name: " << p.name << endl;
    cout <<"Age: " << p.age << endl;
    cout << "Salary: " << p.salary;
}

Đầu ra

Enter Full name: Bill Jobs
Enter age: 55
Enter salary: 34233.4

Displaying Information.
Name: Bill Jobs
Age: 55
Salary: 34233.4

Trong chương trình này, người dùng được yêu cầu nhập tên , tuổi và mức lương của một người bên trong main()chức năng.

Sau đó, biến cấu trúc p sẽ được chuyển cho một hàm bằng cách sử dụng.

displayData(p);

Kiểu trả về displayData()là voidvà một đối số duy nhất của cấu trúc kiểu Person được truyền vào.

Sau đó, các thành viên của cấu trúc pđược hiển thị từ chức năng này.

Ví dụ 2: Trả về cấu trúc từ hàm trong C ++

#include <iostream>
using namespace std;

struct Person {
    char name[50];
    int age;
    float salary;
};

Person getData(Person); 
void displayData(Person); 

int main() {

    Person p, temp;

    temp = getData(p);
    p = temp;
    displayData(p);

    return 0;
}

Person getData(Person p) {

    cout << "Enter Full name: ";
    cin.get(p.name, 50);

    cout << "Enter age: ";
    cin >> p.age;

    cout << "Enter salary: ";
    cin >> p.salary;

    return p;
}

void displayData(Person p) {
    cout << "\nDisplaying Information." << endl;
    cout << "Name: " << p.name << endl;
    cout <<"Age: " << p.age << endl;
    cout << "Salary: " << p.salary;
}

Đầu ra của chương trình này giống như chương trình trên.

Trong chương trình này, chúng ta đã tạo hai biến cấu trúc  p  và temp  kiểu Person dưới  main()hàm.

Biến cấu trúc p được chuyển cho getData()hàm nhận đầu vào từ người dùng, sau đó được lưu trữ trong biến tạm thời .

temp = getData(p); 

Sau đó, chúng tôi gán giá trị của tạm thời cho p .

p = temp;

Sau đó, biến cấu trúc p được chuyển cho displayData()hàm, hàm này sẽ hiển thị thông tin.

Lưu ý:  Chúng tôi không thực sự cần sử dụng biến tạm thời cho hầu hết các trình biên dịch và phiên bản C ++. Thay vào đó, chúng ta có thể chỉ cần sử dụng mã sau:

p = getData(p); 








Gõ tìm kiếm nhanh...