Mọi người cho em hỏi giữa union và struct nó khác nhau như thế nào ạ
Sự khác nhau giữa union và struct?
Hình như khác nhau ở chỗ, struct
cấp phát bộ nhớ cho mỗi thành phần của nó một vùng nhớ khác nhau, còn union
thì tất cả thành phần dùng dung 1 vùng nhớ, và vùng nhớ này có kích thước là kích thước của phần tử lớn nhất trong union
.
Vậy thì trong trường hợp nào mình sẽ dùng struct
và khi nào nên dùng union
vậy anh ? , em có đọc qua cái union
rồi cơ mà toàn toàn thấy mọi người toàn dùng struct
chứ ít ai xài tới union
.
ví dụ mình có một dữ liệu có thể lưu ở 2 dạng, ví dụ kiểu chữ và kiểu số chẳng hạn (trong các tờ biên lai thu tiền)
Dùng struct se giúp cho được việc tối ưu sử dụng bộ nhớ hơn, tránh việc thiếu bộ nhớ. chẳng hạn như bây giờ bộ nhớ bạn dùng union thì bạn sẽ phải tìm khoảng vùng nhớ lớn vừa đủ so với kích thước của phần tử lớn nhất trong khi đó dùng struct thì bạn sẽ cấp phát được nhanh hơn do bạn cứ gặp vùng nhớ nào còn thừa của bộ nhớ thì sẽ cấp cho kích thước của phần tử tương ứng. Cái này bạn đọc thêm kiến thức lý thuyết hệ điều hành bạn sẽ hiểu.
cho phép mình update lại đường link ạ, vì đường link cũ không tồn tại
Small string optimization
Type punning
Giả lập đa hình (!)