Đáp án đúng: B
Trong ngôn ngữ lập trình C/C++, `union` là một kiểu dữ liệu đặc biệt, nơi các thành viên (fields) chia sẻ cùng một vùng nhớ. Điều này có nghĩa là tại bất kỳ thời điểm nào, chỉ có một thành viên của `union` có thể chứa giá trị. Kích thước của `union` bằng kích thước của thành viên lớn nhất. Dựa trên khái niệm này, ta phân tích các đáp án:
- A. Đúng. Tất cả các trường chỉ dùng chung một vùng nhớ, và kích thước union bằng kích thước trường lớn nhất.
- B. Sai. Các trường *không* nằm rải rác trong bộ nhớ. Chúng dùng chung một vùng nhớ. Do đó, kích thước không phải là tổng kích thước các trường.
- C. Đúng. Có thể khai báo các biến trong union có nhiều kiểu khác nhau.
- D. Đúng. Tại một thời điểm ta không thể chứa dữ liệu tại tất cả các thành phần của một biến union được (vì chúng dùng chung bộ nhớ).
Vậy, phát biểu không đúng là B.