Trong bài này, bạn sẽ học về cấu trúc trong lập trình C ++; nó là gì, cách định nghĩa nó và sử dụng nó trong chương trình của bạn.
Cấu trúc là một tập hợp các biến của các kiểu dữ liệu khác nhau dưới một tên duy nhất. Nó tương tự như một lớp ở chỗ, cả hai đều chứa một tập hợp dữ liệu thuộc các kiểu dữ liệu khác nhau.
Ví dụ: Bạn muốn lưu trữ một số thông tin về một người: tên, số quốc tịch và mức lương của người đó. Bạn có thể dễ dàng tạo các tên biến khác nhau, citNo, lương để lưu trữ các thông tin này một cách riêng biệt.
Tuy nhiên, trong tương lai, bạn sẽ muốn lưu trữ thông tin về nhiều người. Bây giờ, bạn cần tạo các biến khác nhau cho từng thông tin cho mỗi người: name1, citNo1, Lương1, name2, citNo2, Lương2
Bạn có thể dễ dàng hình dung mã trông sẽ lớn và lộn xộn như thế nào. Ngoài ra, vì không tồn tại mối quan hệ giữa các biến (thông tin), nó sẽ là một nhiệm vụ khó khăn.
Một cách tiếp cận tốt hơn sẽ là có một bộ sưu tập tất cả thông tin liên quan dưới một tên duy nhất Person
và sử dụng nó cho mọi người. Bây giờ, mã trông sạch hơn, dễ đọc và hiệu quả hơn nhiều.
Tập hợp tất cả các thông tin liên quan dưới một tên duy nhất Person
là một cấu trúc.
Cách khai báo cấu trúc trong lập trình C ++?
Các struct
từ khóa định nghĩa một kiểu cấu trúc tiếp theo là một định danh (tên của cấu trúc).
Khi đó bên trong dấu ngoặc nhọn, bạn có thể khai báo một hoặc nhiều thành viên (khai báo các biến bên trong dấu ngoặc nhọn) của cấu trúc đó. Ví dụ:
struct Person (char name (50); int age; float Lương;);
Ở đây, một cơ cấu người được xác định có ba thành viên: tên, tuổi và lương.
Khi một cấu trúc được tạo, không có bộ nhớ nào được cấp phát.
Định nghĩa cấu trúc chỉ là bản thiết kế để tạo các biến. Bạn có thể hình dung nó như một kiểu dữ liệu. Khi bạn xác định một số nguyên như sau:
int foo;
Chỉ int
định rằng, biến foo chỉ có thể chứa phần tử nguyên. Tương tự, định nghĩa cấu trúc chỉ xác định rằng, thuộc tính nào mà một biến cấu trúc giữ khi nó được định nghĩa.
Lưu ý: Nhớ kết thúc khai báo bằng dấu chấm phẩy (;)
Làm thế nào để xác định một biến cấu trúc?
Sau khi bạn khai báo một người cấu trúc như trên. Bạn có thể xác định một biến cấu trúc là:
Hóa đơn cá nhân;
Ở đây, một dự luật biến cấu trúc được định nghĩa là các cấu trúc kiểu P erson
.
Khi biến cấu trúc được xác định, chỉ khi đó bộ nhớ cần thiết mới được trình biên dịch cấp phát.
Xem xét bạn có hệ thống 32-bit hoặc 64-bit, bộ nhớ float
là 4 byte, bộ nhớ int
là 4 byte và bộ nhớ char
là 1 byte.
Do đó, 58 byte bộ nhớ được cấp phát cho biến cấu trúc.
Làm thế nào để truy cập các thành viên của một cấu trúc?
Các thành viên của biến cấu trúc được truy cập bằng toán tử dấu chấm (.) .
Giả sử, bạn muốn truy cập độ tuổi của hóa đơn biến cấu trúc và gán 50 cho nó. Bạn có thể thực hiện tác vụ này bằng cách sử dụng mã sau:
bill.age = 50;
Ví dụ: Cấu trúc C ++
C ++ Chương trình gán dữ liệu cho các thành viên của một biến cấu trúc và hiển thị nó.
#include using namespace std; struct Person ( char name(50); int age; float salary; ); int main() ( Person p1; cout << "Enter Full name: "; cin.get(p1.name, 50); cout <> p1.age; cout <> p1.salary; cout << "Displaying Information." << endl; cout << "Name: " << p1.name << endl; cout <<"Age: " << p1.age << endl; cout << "Salary: " << p1.salary; return 0; )
Đầu ra
Nhập Họ và tên: Magdalena Dankova Nhập tuổi: 27 Nhập lương: 1024.4 Đang hiển thị thông tin. Tên: Magdalena Dankova Tuổi: 27 Mức lương: 1024.4
Ở đây, một cấu trúc Người được khai báo có ba thành viên tên, tuổi và lương.
Bên trong main()
hàm, một biến cấu trúc p1 được xác định. Sau đó, người dùng được yêu cầu nhập thông tin và dữ liệu do người dùng nhập được hiển thị.
Bạn cũng nên xem các hướng dẫn liên quan đến cấu trúc này:
- Làm thế nào để chuyển các cấu trúc cho các hàm?
- Làm thế nào để sử dụng con trỏ với cấu trúc?