Bài 10 Kiểu Cấu Trúc và Kiểu Hợp pdf

19 311 0
Bài 10 Kiểu Cấu Trúc và Kiểu Hợp pdf

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Bài 10 Kiểu Cấu Trúc Kiểu Hợp 1 Kiểu cấu trúc  Trong C++, cấu trúc (structure) là một tập hợp nhiều biến được tham chiếu dưới cùng một tên, tạo ra một phương tiện gắn kết các thông tin có liên hệ với nhau.  Khai báo struct <tên kiểu> { các thành phần ; } <danh sách biến>; 2  Mỗi thành phần giống như một biến riêng của kiểu, nó gồm kiểu tên thành phần. Một thành phần cũng còn được gọi là trường (field).  Phần tên của kiểu cấu trúc phần danh sách biến có thể có hoặc không.  Các kiểu cấu trúc được phép khai báo lồng nhau, nghĩa là một thành phần của kiểu cấu trúc có thể lại là một trường có kiểu cấu trúc.  Một biến có kiểu cấu trúc sẽ được phân bố bộ nhớ sao cho các thực hiện của nó được sắp liên tục theo thứ tự xuất hiện trong khai báo. 3  Khai báo biến kiểu cấu trúc dùng một trong các dạng: struct <tên kiểu cấu trúc> <danh sách biến> ; hoặc <tên kiểu cấu trúc> <danh sách biến> ;  Các biến được khai báo cũng có thể đi kèm khởi tạo: <tên kiểu cấu trúc> biến = { giá trị khởi tạo } ; 4 Ví dụ struct Phanso { int tu ; int mau ; } ; struct inv_type { char item[40]; double cost; double retail; int on_hand; int lead_time; } inv_varA, inv_varB, inv_varC; 5 Truy xuất thành viên của cấu trúc  Các biến thành viên trong cấu trúc được truy xuất bằng cách viết tên biến cấu trúc tên biến thành viên đó cách nhau bởi dấu chấm. tên biến cấu trúc. tên biến thành viên ví dụ inv_varA.cost gets(inv_varA.item); 6 Mảng kiểu cấu trúc  Các cấu trúc có thể xếp thành mảng. Để khai báo một mảng kiểu cấu trúc, trước hết phải định nghĩa một cấu trúc, sau đó khai báo một mảng của kiểu này.  Ví dụ inv_type invtry[100];  Để truy xuất biến thành viên, phải kèm theo chỉ số. Ví dụ invtry[3].item 7 Khai báo một biến cấu trúc sinhvien để lập hồ sơ sihh viên, trong đó biến ngaysinh cũng là biến có cấu trúc. struct time { int ngay; int thang; int nam; } struct sinhvien{ char hoten[20]; time ngaysinh; char gt[5]; float diem; } 8 Truyền các cấu trúc hàm  Khi một cấu trúc được dùng như một tham số của hàm thì toàn bộ cấu trúc được truyền vào như truyền các tham số khác.  Khi dùng một cấu trúc như là tham số, cần lưu ý kiểu tham số của hàm phải cùng kiểu của biến truyền vào. 9 ví dụ #include <iostream> using namespace std; struct sample { int a; char ch; } ; void f1(sample parm); int main() { sample arg; arg.a = 1000; arg.ch = 'X'; f1(arg); return 0; } void f1(sample parm) { cout << parm.a << " " << parm.ch << "\n"; } 10 [...]... svar2.b; return 0; } 12 Trỏ ến cấu trúc toán tử mũi tên C++ cho phép các con tr ch đ n c u trúc Khai báo m t con tr c u trúc b ng cách đ t d u * trư c tên bi n c u trúc, ví d inv_type *inv_pointer; Tìm đ a ch c a bi n c u trúc dùng toán t &, ví d struct bal { float balance; char name[80]; } person; bal *p; p = &person;// đ t đ a ch c a person vào con tr p 13 Thành ph n c a c u trúc có th đư c truy xu t...Gán các cấu trúc Có th gán n i dung c a m t bi n ki u c u trúc sang m t bi n ki u c u trúc khác mi n là c hai có cùng ki u c u trúc Ví d 11 #include using namespace std; struct stype { int a, b; }; int main() { stype svar1, svar2; svar1.a = svar1.b = 10; svar2.a = svar2.b = 20; cout i = 10; /* gán 10 cho u_var dùng m t con tr */ } 18 void disp_binary(unsigned u); union swap_bytes... *curtime); 15 Kiểu hợp (Union) Ki u h p g m hai hay nhi u bi n cùng chia s m t v trí b nh Do đó m t union cung c p m t phương pháp đ d ch m t m u bit thành hai hay nhi u cách khác nhau Khai báo union { Danh sách các thành ph n; }; 16 Ví dụ union utype { short int i; char ch; }; utype u_var; i ch chia sẻ cùng một vị trí bộ nhớ i Byte 0 Byte 1 ch 17 Truy xuất thành viên của hợp Đ truy xu . Bài 10 Kiểu Cấu Trúc và Kiểu Hợp 1 Kiểu cấu trúc  Trong C++, cấu trúc (structure) là một tập hợp nhiều biến được tham chiếu dưới cùng một tên,. của kiểu cấu trúc và phần danh sách biến có thể có hoặc không.  Các kiểu cấu trúc được phép khai báo lồng nhau, nghĩa là một thành phần của kiểu cấu trúc có thể lại là một trường có kiểu cấu. << " "; } 10 Gán các cấu trúc  Có thể gán nội dung của một biến kiểu cấu trúc sang một biến kiểu cấu trúc khác miễn là cả hai có cùng kiểu cấu trúc. Ví dụ 11 #include <iostream> using

Ngày đăng: 02/04/2014, 06:20

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan