வரிசைக்கும் சுட்டிக்காட்டிக்கும் இடையிலான வேறுபாடு

நூலாசிரியர்: Laura McKinney
உருவாக்கிய தேதி: 1 ஏப்ரல் 2021
புதுப்பிப்பு தேதி: 17 மே 2024
Anonim
வரிசைக்கும் சுட்டிக்காட்டிக்கும் இடையிலான வேறுபாடு - தொழில்நுட்பம்
வரிசைக்கும் சுட்டிக்காட்டிக்கும் இடையிலான வேறுபாடு - தொழில்நுட்பம்

உள்ளடக்கம்


வரிசைக்கும் சுட்டிக்காட்டிக்கும் இடையே நெருங்கிய உறவு உள்ளது. வரிசை கூறுகளை அணுக சுட்டிக்காட்டி பயன்படுத்தப்படலாம், சுட்டிக்காட்டி எண்கணிதத்தைப் பயன்படுத்தி முழு வரிசையையும் அணுகலாம், அணுகலை வேகமாக செய்கிறது. ஒரு சுட்டிக்காட்டி மற்றும் ஒரு வரிசைக்கு இடையே ஒரு அடிப்படை வேறுபாடு உள்ளது, அதாவது ஒரு வரிசை என்பது ஒத்த தரவு வகையின் மாறிகளின் தொகுப்பாகும், அதே சமயம் சுட்டிக்காட்டி என்பது மற்றொரு மாறியின் முகவரியை சேமிக்கும் ஒரு மாறி. வரிசை மற்றும் சுட்டிக்காட்டிக்கு இடையில் வேறு சில வேறுபாடுகள் உள்ளன, அவை ஒப்பீட்டு விளக்கப்படத்தில் கீழே விவாதிக்கப்பட்டுள்ளன.

  1. ஒப்பீட்டு விளக்கப்படம்
  2. வரையறை
  3. முக்கிய வேறுபாடுகள்
  4. முடிவுரை

ஒப்பீட்டு விளக்கப்படம்

ஒப்பீட்டுக்கான அடிப்படைஅணிசுட்டிக்காட்டி
பிரகடனம்// சி ++ இல்
வகை var_name;
// ஜாவாவில்.
வகை var- பெயர்;
var_name = புதிய வகை;
// சி ++ இல்
வகை * var_name;
வேலைஒரேவிதமான டேட்டாடைப்பின் மாறியின் மதிப்பை சேமிக்கிறது.சுட்டிக்காட்டி மாறிகள் டேட்டாடைப் போன்ற அதே டேட்டாடைப்பின் மற்றொரு மாறியின் முகவரியை சேமிக்கவும்.
தலைமுறைசுட்டிகள் வரிசையை உருவாக்க முடியும்.ஒரு வரிசைக்கு ஒரு சுட்டிக்காட்டி உருவாக்கப்படலாம்.
ஜாவா ஆதரவுவரிசை என்ற கருத்தை ஆதரிக்கவும்.சுட்டிகள் ஆதரிக்கவில்லை.
சேமிப்புஒரு சாதாரண வரிசை மாறியின் மதிப்புகளை சேமிக்கிறது மற்றும் சுட்டிக்காட்டி வரிசை மாறிகளின் முகவரியை சேமிக்கிறது.சுட்டிகள் விசேஷமாக மாறிகளின் முகவரியை சேமிக்க வடிவமைக்கப்பட்டுள்ளன.
கொள்ளளவுவரிசை மாறியின் அளவுகளில் குறிப்பிடப்பட்டுள்ள உறுப்புகளின் எண்ணிக்கையை ஒரு வரிசை சேமிக்க முடியும். ஒரு சுட்டிக்காட்டி மாறி ஒரு நேரத்தில் ஒரு மாறியின் முகவரியை மட்டுமே சேமிக்க முடியும்.


வரிசையின் வரையறை

ஒரு வரிசை என்பது ஒரே தரவுத்தொகுப்பின் உறுப்புகளின் தொகுப்பாகும், மேலும் இந்த உறுப்புகள் அனைத்தும் பொதுவான பெயரால் குறிப்பிடப்படுகின்றன, இது ஒரு வரிசை மாறியின் பெயர். அந்த உறுப்பு சேமிக்கப்பட்டுள்ள அந்த வரிசையின் குறிப்பிட்ட குறியீட்டை அணுகுவதன் மூலம் ஒரு குறிப்பிட்ட வரிசை உறுப்பை அணுக முடியும்.அரேக்கள் ஒரு பரிமாண வரிசை, இரு பரிமாண வரிசை அல்லது பல பரிமாண வரிசையாக இருக்கலாம். சுட்டிகளின் வரிசையும் உருவாக்கப்படலாம், அதாவது அனைத்து மாறிகளையும் சுட்டிக்காட்டி மாறி எனக் கொண்ட ஒரு வரிசை. ‘சி ++’ இல் வரிசைகள் நிலையான முறையில் ஒதுக்கப்படுகின்றன, அதேசமயம் ‘ஜாவா’ இல் வரிசைகள் மாறும் வகையில் ஒதுக்கப்படுகின்றன.

// சி ++ வகை var_name; // ஜாவாவில். வகை var- பெயர்; var_name = புதிய வகை;

இங்கே 'வகை' என்பது ஒரு வரிசை மாறியின் தரவு வகையைக் குறிக்கிறது, 'var_name' என்பது வரிசை மாறிக்கு கொடுக்கப்பட்ட பெயரைக் குறிக்கிறது, 'அளவு' என்பது வரிசை மாறியின் திறனைக் குறிக்கிறது, அதாவது அந்த வகை மாறியில் 'வகை' எத்தனை கூறுகளை சேமிக்க முடியும் . ஒரு வரிசையை அணுக இரண்டு முறைகள் உள்ளன, முதல் ‘சுட்டிக்காட்டி எண்கணிதம்’ மற்றும் இரண்டாவது ‘வரிசை அட்டவணைப்படுத்தல்’, அவற்றில் ‘சுட்டிக்காட்டி எண்கணிதம்’ வேகமானது.


// சுட்டிக்காட்டி எண்கணித வெற்றிட காட்சி_அரே (int * S) {ஐப் பயன்படுத்தி அணுகும் போது (* கள்) {cout (<< "மதிப்பு" << * கள்); * கள் ++; }}

‘வரிசை குறியீட்டுடன்’ ஒப்பிடும்போது ‘சுட்டிக்காட்டி எண்கணிதத்தை’ பயன்படுத்துவது வேகமாக வேலை செய்யும், அதாவது அதன் குறியீட்டைப் பயன்படுத்தி வரிசை மாறியை அணுகும். நீங்கள் ஒரு செயல்பாட்டில் சுட்டிகள் வரிசையை அனுப்ப வேண்டும் என்றால், ஒரு சாதாரண வரிசையை அனுப்ப நீங்கள் பயன்படுத்தும் அதே முறையைப் பயன்படுத்தி இதைச் செய்யலாம், அதாவது எந்தவொரு குறியீடும் இல்லாமல், வரிசையின் பெயருடன் செயல்பாட்டை நேரடியாக அழைக்கவும்.

அதை உதாரணத்துடன் புரிந்துகொள்வோம்

// சுட்டிகள் வரிசையை அறிவித்தல். int * p;

இங்கே, ‘p’ என்பது முழு எண் வகைகளின் வரிசை என்பதைக் காட்டுகிறது, இது முழு எண் வகையின் 10 மாறியின் முகவரியைக் கொண்டிருக்கும். மேலே உள்ள சுட்டிக்காட்டி வரிசையை ஒரு செயல்பாட்டு காட்சிக்கு () அனுப்புவோம்.

காட்சி (ப); // செயல்பாட்டு காட்சியை அழைக்கவும். வெற்றிட காட்சி (int * d) {// சுட்டிக்காட்டி வரிசையைப் பெறும் செயல்பாடு. (int i = 0; i <10; i ++) {cout << ("index" <

இந்த செயல்பாடு மதிப்புகளைக் காண்பிக்கும், மாறிகளில் இருக்கும், அதன் முகவரிகள் இந்த சுட்டிக்காட்டி வரிசையில் தொடர்ச்சியாக சேமிக்கப்படும்.

சுட்டிக்காட்டி வரையறை

சுட்டிக்காட்டி என்பது மற்றொரு மாறியின் நினைவக முகவரியைக் கொண்டிருக்கும் ஒரு மாறி. இரண்டின் தரவு வகை, சுட்டிக்காட்டி மாறி மற்றும் ஒரு சுட்டிக்காட்டி மாறிக்கு முகவரி ஒதுக்கப்படும் மாறி ஆகியவை ஒரே மாதிரியாக இருக்க வேண்டும். சுட்டிக்காட்டி மாறி பின்வருமாறு அறிவிக்கப்பட்டுள்ளது.

// சி ++ வகை * பெயரில் அறிவிப்பு;

இங்கே, ‘வகை’ என்பது ஒரு தரவு வகை, ‘பெயர்’ என்பது சுட்டிக்காட்டி மாறியின் பெயர். சுட்டிக்காட்டி மாறியில் எந்த வகையான மாறியின் முகவரியை சேமிக்க முடியும் என்பதை ‘வகை’ வரையறுக்கிறது. எடுத்துக்காட்டாக, முழு எண் சுட்டிக்காட்டி முழு எண் மாறியின் முகவரியை சேமிக்கும். இரண்டு சுட்டிக்காட்டி ஆபரேட்டர்கள் ‘*’ மற்றும் ‘&’ உள்ளன. ஆபரேட்டர் ‘*’ முகவரியில் அமைந்துள்ள மதிப்பைத் தருகிறது, இது மாறியில் சேமிக்கப்படுகிறது, அதைத் தொடர்ந்து ‘*’ அடையாளம். ‘&’ ஆபரேட்டர் மாறியின் முகவரியைத் தொடர்ந்து ‘&’ அடையாளத்தைத் தருகிறது.

// எடுத்துக்காட்டாக int b = 10 int a = & b; // இங்கே b இன் முகவரி a இல் மாறி சேமிக்கப்படுகிறது. // b இன் முகவரி 2000 ஆக இருக்க அனுமதிக்கிறது, எனவே இப்போது ஒரு = 2000. int c = * a; // இங்கே, முழு எண் சுட்டிக்காட்டி மாறி * a .ie இல் சேமிக்கப்பட்ட முகவரியில் அமைந்துள்ள மதிப்பை வழங்கும். இ = 10.

சுட்டிகளில் நீங்கள் பயன்படுத்தக்கூடிய இரண்டு எண்கணித ஆபரேட்டர்கள் மட்டுமே உள்ளன, அதாவது கூட்டல் மற்றும் கழித்தல். நீங்கள் ஒரு முழு எண் சுட்டிக்காட்டி மாறியில் அதிகரிப்பு பயன்படுத்தினால், அது தரவுத்தொகுப்பின் அளவால் அதிகரிக்கப்படும், அதாவது 2 பைட்டுகள், இது ஒரு முழு எண் சுட்டிக்காட்டி என்பதால், அதிகரிப்பில் அது அடுத்த முழு எண் மாறியை சுட்டிக்காட்ட வேண்டும். குறைவிற்கும் இதே நிலைதான்.

// p என்பது ஒரு முழு எண் சுட்டிக்காட்டி containg value 2000. ப ++; // இப்போது ப = 2002. p--; // இப்போது p மீண்டும் இரண்டு பைட்டுகளால் குறைக்கப்பட்ட 2000 ஐக் கொண்டுள்ளது.

  1. ஒரு வரிசை ஒத்த தரவு வகைகளின் மாறிகளை சேமிக்கிறது மற்றும் மாறிகளின் தரவு வகைகள் வரிசையின் வகையுடன் பொருந்த வேண்டும். மறுபுறம், சுட்டிக்காட்டி மாறி ஒரு மாறியின் முகவரியை சேமிக்கிறது, இது ஒரு வகை சுட்டிக்காட்டி மாறி வகைக்கு ஒத்ததாகும்.
  2. நாம் சுட்டிகள் வரிசையை உருவாக்க முடியும், அதாவது வரிசை மாறிகள் சுட்டிக்காட்டி மாறிகள். மறுபுறம், ஒரு வரிசையை சுட்டிக்காட்டும் ஒரு சுட்டிக்காட்டி உருவாக்கலாம்.
  3. ஜாவா வரிசையை ஆதரிக்கிறது, ஆனால் இது சுட்டிகளை ஆதரிக்காது.
  4. ஒரு வரிசை அளவு அது சேமிக்கக்கூடிய மாறிகள் எண்ணிக்கையை தீர்மானிக்கிறது; ஒரு சுட்டிக்காட்டி மாறி மாறி மட்டுமே முகவரியை சேமிக்க முடியும்

குறிப்பு:

சுட்டிகளை ஜாவா ஆதரிக்கவில்லை அல்லது கண்டிப்பாக தவிர்க்கவில்லை.

முடிவுரை:

ஒத்த தரவு வகையின் தரவு கூறுகளில் நாம் வேலை செய்ய வேண்டியிருக்கும் போது, ​​மாறிகள் மீது தனித்தனியாக வேலை செய்வதற்கு பதிலாக, ஒத்த தரவு வகைகளின் மாறிகள் ஒரு வரிசையை உருவாக்கி, பின்னர் அதை இயக்கலாம். சில நிரல்களுக்கு சுட்டிகள் அவசியம், அது மிகப்பெரிய சக்தியைத் தருகிறது, ஆனால் துரதிர்ஷ்டவசமாக, ஒரு சுட்டிக்காட்டி தவறான மதிப்பைக் கொண்டிருந்தால், அதைக் கண்டுபிடிப்பது மிகவும் கடினமான பிழையாக இருக்கும்.