C++ ஓர் அறிமுகம் - தரவினங்களின் பண்புணர்த்திகள் | 11th Computer Science : Chapter 9 : Introduction to C++
தரவினங்களின் பண்புணர்த்திகள் (Data type modifiers)
மதிப்பிலி தரவினத்தை தவிர மற்ற அடிப்படை தரவினங்களின் சேமிக்கும் அளவை மாற்றி அமைக்க பண்புணர்த்திகள் (modifiers) பயன்படுகின்றன. சாதாரணமாகவே, நினைவகத்தில் தரவுகளை சேமிக்க அனைத்து அடிப்படை தரவினங்களும் ஒரு குறிப்பிட்ட அளவு பரப்பிலான மதிப்பை (Range of values) எடுத்துக்கொள்கிறது. எடுத்துக்காட்டாக, முழு எண் தரவினம் (integer) இரண்டும் பைட் தரவை மட்டுமே சேமிக்கும். உண்மையில், சில முழு எண் தரவுகள் மிகவும் நீளமானதாக மற்றும் அதிக நினைவக இடம் தேவைப்படுவதாகவோ இருக்கலாம். இந்த நிலையில், நினைவக அளவை கண்டிப்பாக மாற்றி அமைக்க வேண்டும். அடிப்படை தரவினங்களின் நினைவக ஒதுக்கீட்டை மாற்றி அமைக்க (விவரிக்க அல்லது சுருக்க) பண்புணர்த்திகள் பயன்படுகின்றன. இவைகள் தகுதியாக்கிகள் (Qualifiers) என்றும் அழைக்கப்படுகின்றன.
C++ ல் நான்கு பண்புணர்த்திகள்பயன்படுத்தப்படுகிறது, அவை
(1) signed
(2) unsigned
(3) long
(4) short
இந்த நான்கு பண்புணர்த்திகளையும் எல்லா அடிப்படை தரவினங்களுடன் பயன்படுத்தலாம் பின்வரும் அட்டவணை 9.6 அனைத்து தரவினங்களின் நினைவக ஒதுக்கீட்டை பண்புணர்த்தியுடனும் அது இல்லாமலும் காண்பிக்கிறது..
அட்டவணை 9.6 குறியுரு தரவினத்தின் நினைவக வகைகள்
மேற்கண்ட அட்டவணையின் படி முழு எண் தரவினம் (integer) இரண்டு பைட் தரவுகளை மட்டும் எடுத்துக்கொள்கிறது. ஆனால் long int தரவினம் இந்த அளவை விட இரண்டு மடங்கு அதிகமான (4 பைட்டுகள்) தரவை எடுத்துக் கொள்கிறது. longint அதிக எண்களை சேமித்துக் கொள்கிறது. (long என்பது பண்புணர்த்தி) (int என்பது அடிப்படை தரவினம்)
அட்டவணை 9.7 குறியுரு தரவினத்தின் நினைவக ஒதுக்கீடு
அட்டவணை 9.8 மதிப்புப் புள்ளி தரவினத்தின் நினைவக ஒதுக்கீடு
C++ நிரல் பெயர்ப்பியை பொறுத்து நினைவக ஒதுக்கீடு வேறுபடும். மேலே கொடுக்கப்பட்டுள்ள அட்டவணையில் உள்ள மதிப்புகள் Turbo C++ தொகுப்பானை அடிப்படையாக கொண்டது. int மற்றும் long double வகைக்கு Dev C++ல் அதிக இடத்தை கொடுக்கிறது.
பின்வரும் அட்டவணை 9.9 Turbo C++ மற்றும் DevC++ல் நினைவக ஒதுக்கீட்டிற்கான வேறுபாட்டை காட்டுகிறது.
அட்டவணை 9.9 Turbo C++ மற்றும் Dev C++ நிரல் பெயர்ப்பியின் நினைவக ஒதுக்கீடு
Dev C++intல் மற்றும் long வகைகளுக்கு 4 பைட்டுகளை ஒதுக்கிறது. Dev C++ல் நிரலை எழுதும் போது பெரிய முழு எண் மதிப்புகளை கையாள்வதற்கு இதில் ஏதேனும் ஒரு வகையை பயன்படுத்தலாம். குறிப்பு: sizeof( ) என்னும் செயற்குறி தரவினத்தின் அளவை தருகிறது. (size)
எடுத்துக்காட்டு 9.5: C++ தரவினத்தின் அளவை கண்டறிவதற்கான நிரல்
#include <iostream>
using namespace std;
int main()
{
short a;
nsigned short b;
signed short c;
int d;
unsigned int e;
signed int f;
long g;
unsigned long h;
signed long i;
char j;
unsigned char k;
signed char l;
float m;
double n;
long double p;
cout << "\n Size of short = " << sizeof(a);
cout << "\n Size of unsigned short = " << sizeof(b);
cout << "\n Size of signed short = " << sizeof (c);
cout << "\n Size of int = " << sizeof(d);
cout << "\n Size of unsigned int = " << sizeof(e);
cout << "\n Size of signed int = " << sizeof(f);
cout << "\n Size of long = " << sizeof(g);
cout << "\n Size of unsigned long = " << sizeof(h);
cout << "\n Size of signed long = " << sizeof(i);
cout << "\n Size of char = " << sizeof(j);
cout << "\n Size of unsigned char = " << sizeof(k);
cout << "\n Size of signed char = " << sizeof(l);
cout << "\n Size of float = " << sizeof(m);
cout << "\n Size of double = " << sizeof(n);
cout << "\n Size of long double = " << sizeof(p);
}
வெளியீடு: (Dev C++ ல் தொகுத்து இயக்கப்படுகிறது)
Size of short = 2
Size of unsigned short = 2
Size of signed short = 2
Size of int = 4
Size of unsigned int = 4
Size of signed int = 4
Size of long = 4
Size of unsigned long = 4
Size of signed long = 4
Size of char = 1
Size of unsigned char = 1
Size of signed char = 1
Size of float = 4
Size of double = 8
Size of long double = 12
குறிப்பு:
sizeof( ) எனும் செயற்குறி தரவினத்தின் - அளவை வெளியீடாக காட்டும்.
C++ - ல் எண்களின் பின்னொட்டு
முழு எண் மற்றும் மிதப்புப்புள்ளி எண்களுக்கு வேறுபட்ட பின்னொட்டுகள் பயன்படுகின்றன. ஒரே மதிப்பை, பல்வேறு தரவினமாக எடுத்துக்காட்டாக, 45 என்ற மதிப்பை long, unsigned int மற்றும் unsigned long int (ஆங்கில சிறிய அல்லது பெரிய எழுத்து) பின்னொட்டாக சேர்க்க வேண்டும். அதாவது, 45L அல்லது 45U என இவ்வாறு குறிப்பிடுவது, கொடுக்கப்பட்ட மதிப்புகளை long மற்றும் unsigned என எடுத்துக்கொள்ள வேண்டும் என்று நிரல் பெயர்ப்பிக்கு கட்டளையிடுவதாகும். அதேப் போன்று, மிதப்புப் புள்ளி எண்களைக் குறிப்பிட F என்ற எழுத்தை பயன்படுத்த வேண்டும்.
எடுத்துக்காட்டு 9.14