कार्य को देखते हुए विभिन्न डेटा प्रकारों की मेमोरी रेंज को ढूंढना है, कि डेटा प्रकार किस मूल्य की सीमा को न्यूनतम मान से अधिकतम मूल्य तक संग्रहीत कर सकता है। डेटा प्रकार की मेमोरी रेंज होती है जिसमें से डेटा का मूल्य संग्रहीत किया जा सकता है। मान की बड़ी रेंज को याद रखना मुश्किल है, इसलिए C++ में इन नंबरों का प्रतिनिधित्व करने के लिए मैक्रोज़ हैं, मैक्रोज़ से इन बड़ी संख्याओं को पूरी संख्या रेंज टाइप किए बिना सीधे वेरिएबल को असाइन किया जा सकता है।
उदाहरण
'चार' (हस्ताक्षरित) वर्ण डेटा प्रकार है और इसमें -128 से +128 की सीमा है और न्यूनतम मान के लिए मैक्रो, चार डेटा प्रकार के श्रेणी मान खोजने के लिए मैक्रो CHAR_MIN और CHAR_MAX है।
इसी तरह हम इन MIN और MAX मैक्रोज़ द्वारा किसी भी प्रकार के डेटा की श्रेणी का पता लगा सकते हैं जैसे 'int' के लिए हम INT_MIN और INT_MAX का उपयोग कर सकते हैं।
चार की रेंज
128 से +128
इंट की रेंज
-2147483648 से +2147483648
उदाहरण
डेटा प्रकारों के मैक्रोज़ प्रदर्शित करने के लिए C++ कोड
#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; }
आउटपुट
यदि हम उपरोक्त कोड चलाते हैं तो यह निम्न आउटपुट उत्पन्न करेगा -
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