Float, double và decimal đều là Value Types (kiểu giá trị) trong C#.
Value type variables gán giá trị trực tiếp. Kế thừa từ System.ValueType. Value types chứa dữ liệu trực tiếp.
Float Value Type
Float là kiểu dấu phẩy động đơn độ chính xác (single-precision) 32-bit, phạm vi 3.4 x 1038 đến +3.4 x 1038.
Kích thước bộ nhớ: 4 bytes.
float a = 3.5f;
Double Value Type
Double là kiểu dấu phẩy động kép độ chính xác (double-precision) 64-bit, phạm vi (+/-)5.0 x 10-324 đến (+/-)1.7 x 10308.
Kích thước bộ nhớ: 8 bytes.
double d = 5.78788;
Decimal Value Type
Decimal là kiểu thập phân chính xác 128-bit với 28-29 chữ số có nghĩa, phạm vi (-7.9 x 1028 đến 7.9 x 1028) / 100 đến 28.
Kích thước bộ nhớ: 16 bytes.
decimal d = 1.0M;