কিছু ক্ষেত্রে, বিভিন্ন সমস্যায় আমাদের একটি নির্দিষ্ট ডেটাটাইপের সর্বনিম্ন বা সর্বোচ্চ মান ব্যবহার করতে হবে। সেই মান মনে রাখা খুবই কঠিন। সেই কারণে, C++ এর কিছু ম্যাক্রো আছে, যেগুলো কিছু ডেটাটাইপের সর্বনিম্ন এবং সর্বোচ্চ পরিসীমা বোঝাতে ব্যবহৃত হয়। তাদের মধ্যে কিছু ম্যাক্রো নেই, কারণ সেগুলি স্বাক্ষরবিহীন, তাই সর্বনিম্ন হবে 0৷
ডেটার প্রকার | পরিসীমা | ন্যূনতম মানের জন্য ম্যাক্রো | সর্বোচ্চ মানের জন্য ম্যাক্রো |
---|---|---|---|
চার | -128 থেকে +127 | CHAR_MIN | CHAR_MAX |
ছোট অক্ষর | -128 থেকে +127 | SCHAR_MIN | SCHAR_MAX |
স্বাক্ষরবিহীন অক্ষর | 0 থেকে 255 | ------ | UCHAR_MAX |
ছোট int | -32768 থেকে +32767 | SHRT_MIN | SHRT_MAX |
স্বাক্ষরবিহীন সংক্ষিপ্ত int | 0 থেকে 65535 | ------ | USHRT_MAX |
int | -2147483648 থেকে +2147483647 | INT_MIN | INT_MAX |
আনসাইনড int | 0 থেকে 4294967295 | ------ | INT_MAX |
লং int | -2147483648 থেকে +2147483647 | LONG_MIN | LONG_MAX |
আনসাইন করা লম্বা int | 0 to18446744073709551615 | ------ | ULONG_MAX |
লং লং int | -9223372036854775808 থেকে +9223372036854775807 | LLONG_MIN | LLONG_MAX |
স্বাক্ষরবিহীন দীর্ঘ দীর্ঘ int | 0 to18446744073709551615 | ------ | ULLONG_MAX |
ফ্লোট | 1.17549e-38 থেকে 3.40282e+38 | FLT_MIN | FLT_MAX |
ফ্লোট(নেতিবাচক) | -1.17549e-38 থেকে-3.40282e+38 | -FLT_MIN | -FLT_MAX |
ডবল | 2.22507e-308 থেকে 1.79769e+308 | DBL_MIN | DBL_MAX |
ডবল(নেতিবাচক) | -2.22507e-308 থেকে-1.79769e+308 | -DBL_MIN | -DBL_MAX |
আমরা C++ এর কিছু ডেটা প্রকারের পরিসর প্রিন্ট করার জন্য একটি সাধারণ প্রোগ্রাম দেখতে পারি।
উদাহরণ
#include#include // int,char macros#include // float এর জন্য, ডাবল ম্যাক্রোসাজিং নেমস্পেস std;int main() { cout <<"char রেঞ্জ :(" < আউটপুট
<প্রি>চ্যার রেঞ্জ:(-128, 127) সংক্ষিপ্ত চর রেঞ্জ:(-128, 127) স্বাক্ষরবিহীন চর রেঞ্জ:(0, 255) সংক্ষিপ্ত int রেঞ্জ:(-32768, 32767) স্বাক্ষরবিহীন সংক্ষিপ্ত পরিসর:(0, 65535) ) int পরিসীমা:(-2147483648, 2147483648, 2147483647) দীর্ঘ int পরিসীমা:(-2147483648, 2147483648, 2147483647) (0, 4294967295) দীর্ঘ দীর্ঘ int পরিসীমা:(-9223372036854775808, 9223372036854775807) স্বাক্ষরবিহীন লং লং int রেঞ্জ:(0, 18446744073709551615)ফ্লোট রেঞ্জ:(1.17549e-038, 3.40282e+038)ফ্লোট(নেতিবাচক) রেঞ্জ:(-1.17549e-038, -320202020)+320e. -308, 1.79769e+308)ডাবল(নেতিবাচক) রেঞ্জ:(-2.22507e-308, -1.79769e+308)