C ++ प्रकार संशोधक: छोटा, लंबा, हस्ताक्षरित और अहस्ताक्षरित

इस ट्यूटोरियल में, हम टाइप-मॉडिफायर्स के बारे में और उदाहरणों की मदद से C ++ प्रोग्रामिंग में उनका उपयोग कैसे करें, इसके बारे में जानेंगे।

C ++ प्रोग्रामिंग में, मौलिक डेटा प्रकारों के अर्थ को बदलने के लिए प्रकार संशोधक का उपयोग किया जाता है।

हैं चार सी ++ में टाइप संशोधक।

  • short
  • long
  • signed
  • unsigned

यहाँ एक संक्षिप्त सारांश है:

डाटा प्रकार आकार (बाइट्स में) अर्थ
signed int पूर्णांकों के लिए प्रयुक्त (समतुल्य int)
unsigned int केवल केवल गैर-नकारात्मक पूर्णांक संग्रहीत कर सकते हैं
short छोटे पूर्णांकों के लिए उपयोग किया जाता है (रेंज -32768 से 32767 )
long कम से कम ४ बड़े पूर्णांक (समतुल्य long int) के लिए उपयोग किया जाता है
unsigned long बड़े धनात्मक पूर्णांक या 0 (समतुल्य unsigned long int) के लिए उपयोग किया जाता है
long long बहुत बड़े पूर्णांक (समतुल्य long long int) के लिए उपयोग किया जाता है ।
unsigned long long बहुत बड़े धनात्मक पूर्णांक या 0 (समतुल्य unsigned long long int) के लिए उपयोग किया जाता है
long double बड़े फ्लोटिंग-पॉइंट नंबरों के लिए उपयोग किया जाता है
signed char 1 है पात्रों के लिए उपयोग किया जाता है (गारंटी रेंज -127 से 127 तक )
unsigned char 1 है पात्रों के लिए उपयोग किया जाता है (सीमा 0 से 255 तक )

छोटा प्रकार संशोधक

हम छोटे पूर्णांक (सीमा में ) के shortलिए उपयोग कर सकते हैं ।−32,767+32,767

उदाहरण के लिए,

 // small integer short a = 12345;

यहाँ, एक shortपूर्णांक चर है।

नोट: short के बराबर है short int

लंबे प्रकार के संशोधक

यदि हमें एक बड़ा पूर्णांक (रेंज -2147483647 से 2147483647 तक) स्टोर करने की आवश्यकता है , तो हम टाइप स्पेसियर का उपयोग कर सकते हैं long। उदाहरण के लिए,

 // large integer long b = 123456;

नोट: long के बराबर है long int

लंबे प्रकार के संशोधक का उपयोग doubleचर के साथ भी किया जा सकता है ।

 // large floating-point number long double c = 0.333333333333333333L;

नोट: इंगित करने के लिए long double, हम Lप्रत्यय का उपयोग करते हैं । यदि हम प्रत्यय का उपयोग नहीं करते हैं L, तो यह एक ऐसा doubleमान है जिसे परिवर्तित किया जाता है long double(जिसके परिणामस्वरूप डेटा हानि हो सकती है)।

लम्बा लम्बा

longlong longप्रकार बनाने के लिए दो बार दोहराया जा सकता है । इस प्रकार का उपयोग इससे भी बड़ी संख्या के लिए किया जाता है longlong longप्रकार संशोधक केवल के साथ इस्तेमाल किया जा सकता है int

उदाहरण के लिए,

 // long long int long long num = 12345678;

हस्ताक्षरित और अहस्ताक्षरित संशोधक

हस्ताक्षर किए गए चर शून्य सहित सकारात्मक और नकारात्मक दोनों पूर्णांकों को पकड़ सकते हैं । उदाहरण के लिए,

 // positive valued integer signed int x = 23; // negative valued integer signed int y = -13; // zero-valued integer signed int z = 0;

यहाँ,

  • x एक सकारात्मक-मूल्यवान पूर्णांक रखता है
  • y एक नकारात्मक-मूल्यवान पूर्णांक रखता है
  • z एक शून्य-मूल्यवान पूर्णांक रखता है

ध्यान दें:

  • डिफ़ॉल्ट रूप से, पूर्णांक होते हैं signed। इसलिए इसके बजाय signed int, हम सीधे उपयोग कर सकते हैं int
  • signed और अहस्ताक्षरित का उपयोग केवल int और char प्रकारों के साथ किया जा सकता है।

अहस्ताक्षरित चर केवल गैर नकारात्मक पूर्णांक मान हो सकते हैं। उदाहरण के लिए,

 // positive valued integer unsigned int x = 2; unsigned int y = 0;

यहाँ,

  • x एक सकारात्मक-मूल्यवान पूर्णांक रखता है
  • y शून्य धारण करता है

In general, an int variable can store a range of values from -2,147,483,648 to 2,147,483,647. Whereas, an unsigned int variable can store a range of values from 0 to 4,294,967,295.

signed, unsigned and plain char

C++ has 3 different char types: char, signed char and unsigned char. In practice, there are basically only 2 types: signed char and unsigned char.

This is because even though char is not the same as signed char or unsigned char in standard C++, different compilers treat char as either signed char or unsigned char according to their own preference.

Note: When we only use char instead of signed char or unsigned char, this type is known as plain char.

जैसा कि आपने अनुमान लगाया है, signed charसकारात्मक और नकारात्मक दोनों पूर्णांकों को unsigned charसंग्रहीत कर सकता है , जबकि केवल सकारात्मक पूर्णांक ( 0 सहित ) को संग्रहीत कर सकता है ।

गारंटी पूर्णांक मानों की श्रेणी signed charस्टोर कर सकते हैं है 127 करने के लिए -127 जबकि की सीमा unsigned charहै 255 करने के लिए 0

 // plain char char plain_1 = 65; char plain_2 = 0; // plain char with negative value // might cause problems with some compilers char plain_3 = -56; // signed char signed char sin_1 = 12; signed char sin_2 = 0; signed char sin_3 = -12; // unsigned char unsigned char unsin_1 = -85; unsigned char unsin_2 = 0;

यहाँ,

  • plain_1 एक धनात्मक-मूल्यवान पूर्णांक रखता है
  • plain_2 एक शून्य-मूल्यवान पूर्णांक रखता है
  • sin_1 एक सकारात्मक-मूल्यवान पूर्णांक रखता है
  • sin_2 एक शून्य-मूल्यवान पूर्णांक रखता है
  • sin_3 एक नकारात्मक-मूल्यवान पूर्णांक रखता है
  • unsin_1 एक नकारात्मक-मूल्यवान पूर्णांक रखता है
  • unsin_2 एक शून्य-मूल्यवान पूर्णांक रखता है

नोट: संख्यात्मक हेरफेर करने के लिए सादे चार का उपयोग नहीं करना बेहतर है; इसके बजाय हस्ताक्षर किए गए चार्ट या अहस्ताक्षरित चार का उपयोग किया जाना चाहिए। प्लेन चार का उपयोग केवल चरित्र मूल्यों को संग्रहीत करने के लिए किया जाना चाहिए।

दिलचस्प लेख...