Nhiệm vụ được giao là tìm phạm vi bộ nhớ của các kiểu dữ liệu khác nhau, để phạm vi giá trị mà một kiểu dữ liệu có thể lưu trữ giá trị từ giá trị nhỏ nhất đến giá trị lớn nhất. Có phạm vi bộ nhớ của loại dữ liệu mà từ đó giá trị của dữ liệu có thể được lưu trữ. Rất khó để nhớ dải giá trị lớn nên C ++ có macro để biểu diễn những số này, từ macro những số lớn này có thể được gán trực tiếp cho biến mà không cần nhập toàn bộ dải số.
Ví dụ
‘Char’ (có dấu) là kiểu dữ liệu ký tự và có phạm vi từ -128 đến +128 và macro cho giá trị nhỏ nhất, macro để tìm giá trị phạm vi của kiểu dữ liệu char là CHAR_MIN và CHAR_MAX.
Tương tự như vậy, chúng tôi có thể tìm phạm vi của bất kỳ kiểu dữ liệu nào bằng các macro MIN và MAX này, chẳng hạn như đối với ‘int’, chúng tôi có thể sử dụng INT_MIN và INT_MAX.
Phạm vi ký tự
128 đến +128
Phạm vi int
-2147483648 đến +2147483648
Ví dụ
Mã C ++ để chứng minh macro của các kiểu dữ liệu
#include<iostream.h> #include<float.h> #include<limits.h> Using namespace std; int main( ) { cout<< " Range of Char :” << CHAR_MIN<< " to ”<<CHAR_MAX; cout<< " Range of int :” <<INT_MIN<< " to " <<INT_MAX; cout<< " Range of float :” <<FLT_MIN<< " to " <<FLT_MAX; cout<< " Range of double :” <<DBL_MIN<< " to " <<DBL_MAX; cout<< " Range of short char :” <<SCHAR_MIN<< " to " <<SCHAR_MAX; cout<< " Range of Unsigned Char :” << 0 << " to " <<UCHAR_MAX; cout<< " Range of long int :” <<LONG_MIN<< " to " <<LONG_MAX; cout<< " Range of Unsigned int :” << 0 << " to " <<UINT_MAX; cout<< " Range of short int :” <<SHRT_MIN<< " to " <<SHRT_MAX; cout<< " Range of float Negative :” <<-FLT_MIN<< " to " <<-FLT_MAX; cout<< " Range of double negative:” <<-DBL_MIN<< " to " <<-DBL_MAX; Return 0; }
Đầu ra
Nếu chúng ta chạy đoạn mã trên, nó sẽ tạo ra kết quả sau -
Range of char: -128 to 127 Range of int: -2147483648 to 2147483648 Range of float: 1.17549e-38 to 3.40282e+38 Range of double: 2.22507e-308 to 1.79769e+308 Range of Short char: -128 to 127 Range of Unsigned Char: 0 to 255 Range of long int: -922337203685477580 to 922337203685477580 Range of Unsigned int: 0 to 42944967295 Range of Short int: -32768 to 32767 Range of float negative: -1.17549e-38 to -3.40282e+38 Range of double negative: 2.22507e-308 to 1.79769e+308