Level 413 bài
Struct / Union / Enum
Gom dữ liệu thành kiểu mới, hiểu padding và alignment.
Chương 15. Struct
Khai báo, typedef, con trỏ struct, struct lồng nhau, cấp phát động.
- 15.1Struct cơ bảnGom nhiều kiểu vào một, ba cách khởi tạo, và bố cục bộ nhớ kèm phần đệm.24 phút
- 15.2typedefĐặt tên mới cho kiểu, bốn cách kết hợp với struct, và khi nào không nên dùng.16 phút
- 15.3Con trỏ structToán tử mũi tên, truyền struct hiệu quả, và kiểu không hoàn chỉnh để giấu chi tiết.20 phút
- 15.4Struct lồng nhauStruct chứa struct, thành viên vô danh của C11, và bố cục bộ nhớ khi lồng.18 phút
- 15.5Mảng structDanh sách bản ghi, sắp xếp và tìm kiếm, cùng so sánh hai cách bố trí dữ liệu.20 phút
- 15.6Struct và hàmTruyền và trả về struct, quy ước gọi hàm, và mẫu thiết kế giao diện quanh struct.20 phút
- 15.7Struct và cấp phát độngCặp hàm tạo và hủy, sao chép nông so với sao chép sâu, và mảng thành viên linh hoạt.24 phút
Chương 16. Enum
Hằng số có tên, kết hợp switch, máy trạng thái.
- 16.1Enum cơ bảnHằng số có tên, quy tắc đánh số, kiểu thật của enum và những giới hạn của nó.18 phút
- 16.2enum với switchVì sao không viết nhánh mặc định, và cách để trình biên dịch bắt lỗi thiếu nhánh.16 phút
- 16.3Máy trạng tháiBảng chuyển trạng thái thay cho hàng chục nhánh if, và cách kiểm chứng nó.22 phút
Chương 17. Union
Chia sẻ vùng nhớ, tagged union, ứng dụng trong hệ nhúng.
- 17.1Union cơ bảnMọi thành viên dùng chung một vùng nhớ, kích thước, và quy tắc chỉ đọc thành viên vừa ghi.18 phút
- 17.2Union có nhãnGhép enum với union thành kiểu biến thể an toàn, và bộ hàm thao tác quanh nó.22 phút
- 17.3Ứng dụng thực tếĐọc dữ liệu theo byte, gói tin mạng, thanh ghi phần cứng, và giới hạn về tính di động.20 phút