செயற்குறிகள் (Operators)
செயற்குறிகள் என்பது சில கணித மற்றும் ஏரண செயல்பாடுகளை செய்ய பயன்படும் குறியீடுகளாகும். செயலேற்பிகள் (Operands) என்பது செயற்குறிகளால் செயல்படுத்தப்படும் தரவு கூறுகள் அல்லது மதிப்புகளை குறிக்கிறது.
C++ -ல், செயலேற்பிகளின் எண்ணிக்கையின் அடிப்படையில் செயற்குறிகள் பின்வருமாறு வகைப் படுத்தப்படுகின்றன.
(i) ஒரும செயற்குறிகள் (Unary Operators) - ஒரே ஒரு செயலேற்பியை மட்டும் ஏற்கும்
(ii) இரும செயற்குறிகள் (Binary Operators) - இரண்டு செயலேற்பியை மட்டும் ஏற்கும்
(iii) மும்ம செயற்குறிகள் (Ternary Operators) - மூன்று செயலேற்பியை மட்டும் ஏற்கும்
பொதுவாக, C++ செயற்குறிகள் பின்வருமாறு வகைப்படுத்தப்படுகின்றன.
1. கணக்கீட்டுச்செயற்குறிகள் (Arithmetic Operators)
2. ஒப்பீட்டுச்செயற்குறிகள் (Relational Operators)
3. தருக்கச்செயற்குறிகள் (Logical Operators)
4. மதிப்பிருத்து செயற்குறிகள் (Assignment Operators)
5. நிபந்தனைச்செயற்குறிகள் (Conditional Operator)
(1) கணக்கீட்டுச் செயற்குறிகள் (Arithmetic Operators)
கணக்கீட்டுச் செயற்குறிகள் எளிய கணிதச் செயல்பாடுகளாகிய கூட்டல், கழித்தல், பெருக்கல், மற்றும் வகுத்தல் போன்ற கணக்கீடுகளை செயல்படுத்துகிறது.
• மேலே குறிப்பிடப்பட்டுள்ள கணக்கீட்டுச் செயற்குறிகள் இரும செயற்குறிகளாகும். இருமச் செயற்குறிகளுக்கு குறைந்தபட்சம் இரண்டு செயலேற்பிகள் தேவை.
மிகுப்பு மற்றும் குறைப்புச்செயற்குறிகள் Increment and Decrement Operators
+ + (Plus, Plus) மிகுப்பு செயற்குறி
-- (Minus, Minus) குறைப்புச் செயற்குறி
மிகுப்பு அல்லது குறைப்பு செயற்குறி ஒரு செயலேற்பியின் மீது மட்டுமே செயற்பட்டு ஒரு புதிய மதிப்பை வழங்குகிறது. எனவே, இந்தச் செயற்குறிகள் ஒருமச் செயற்குறிகள் எனப்படும். மிகுப்பு செயற்குறி செயலேற்பியுடன் 1 என்ற மதிப்பை கூட்டுகிறது. குறைப்புச் செயற்குறி செயலேற்பியிலிருந்து 1 என்ற மதிப்பை குறைக்கிறது.
எடுத்துக்காட்டாக
• x++ அல்லது ++ x என்பது x = x + 1 என்பதற்குச் சமம். →x -ன் தற்போதைய மதிப்புடன் 1ஐ கூட்டுகிறது.
• x -- அல்லது -- x என்பது x = x-1 என்பதற்குச் சமம். →x - ன் தற்போதைய மதிப்புடன் 1ஐ குறைக்கிறது.
இந்த மிகுப்பு (++) அல்லது குறைப்பு (--) செயற்குறிகள் மாறிகளுக்கு முன்னொட்டாகவோ அல்லது பின்னொட்டாகவோ இருத்தப்படுகிறது. முன்னொட்டு முறையில் செயலேற்பியை பயன்படுத்துவதற்கு முன்னதாகவே மிகுப்பு அல்லது குறைப்பு செயல்படுத்தப்படும்.
(2) ஒப்பீட்டுச் செயற்குறிகள் (Relational Operators)
ஒப்பீட்டுச் செயற்குறிகள் செயலேற்பிகளுக்கு இடையேயான உறவு முறையை கண்டுபிடிக்க பயன்படுகிறது. ஒப்பீட்டுச் செயற்குறிகள் இரண்டு செயலேற்பிகள் மீது செயல்படுத்தப்படும்போது, விடையானது பூலியன் மதிப்பாக இருக்கும். 1 அல்லது 0 என்பது முறையே சரி அல்லது தவறு என்பதைக் குறிக்கிறது. C++, ஆறு ஒப்பீட்டுச் செயற்குறிகளை வழங்குகிறது. அவைகள்,
• மேலே கொடுக்கப்பட்டுள்ள எடுத்துக்காட்டில் செயலேற்பி a-செயலேற்பி b-யுடன் ஒப்பிடப்பட்டு ஒப்பீட்டின் அடிப்படையில் விடை 1 அல்லது 0 என வரும். அதாவது, 1 என்பது சரி, 0 என்பது தவறு.
• அனைத்து ஆறு ஒப்பீட்டு செயற்குறிகளும் செயற்குறி இருமச் செயற்குறிகள் ஆகும்.
(3) தருக்கச் செயற்குறிகள் (Logical Operators)
தருக்கச் செயற்குறிகள், தருக்க மற்றும் ஒப்பீட்டு கோவைகளை மதிப்பிட பயன்படுகிறது. தருக்க செயற்குறிகள் செயலேற்பிகளாகிய தருக்க கோவைகளின் மீது செயல்படுகிறது. C++ மூன்று தருக்கச் செயற்குறிகளை வழங்குகிறது.
• AND, OR இரண்டும் இரும செயற்குறிகள் NOT என்பது ஒரும செயற்குறி ஆகும்.
எடுத்துக்காட்டு: a = 5, b = 6, c = 7;
(4) மதிப்பிருத்து செயற்குறி (Assignment Operator):
செயற்குறி = (சமம்) என்பது சாதாரண மதிப்பிருத்து செயற்குறி ஆகும். ஒரு மதிப்பிருந்து கூற்றின் வலப்பக்கம் இருக்கும் மதிப்பை இடப்பக்கம் உள்ள மாறியில் இருத்தும். இது பொதுவாக எல்லா கணிப்பொறி மொழிகளிளும் பயன்பாட்டில் உள்ளது. இது ஒரு இரும செயற்குறி ஆகும்.
C++ பல விதமான மதிப்பிருந்து செயற்குறிகளைப் பயன்படுத்துகிறது. அவைகள் குறுக்கு வழி மதிப்பிருத்து செயற்குறிகள் எனப்படும்.
(5) நிபந்தனைச் செயற்குறி (Conditional Operator):
C++இல் உள்ள ஒரே ஒரு நிபந்தனைச் செயற்குறி (?:) உள்ளது. இது ஒரு மும்ம செயற்குறி ஆகும். இந்த செயற்குறி if .... else கட்டுப்பாட்டு கூற்றுக்கு மாற்றாகப் பயன்படுகிறது. இதைப் பற்றி பின்வரும் if .... else கூற்றுயுடன் விரிவாகக் காண்போம்.
(6) பிற செயற்குறிகள் (Other Operators):
செயற்குறிகளின் முன்னுரிமை (Precedence of Operators):
செயற்குறிகள் முன்னுரிமையின் அடிப்படையில் செயல்படுத்தப்படுகின்றன. செயலேற்பிகளும், செயற்குறிகளும் குறிப்பிட்ட தருக்க முறைப்படி குழுவாக்கப்பட்டு மதிப்பிடப்படுகின்றன. இத்தகைய குழு வாக்கம் தொடர்புறுத்தம் (Association) எனப்படுகிறது.
முன்னுரிமை வரிசை (The order of precedence):
உங்களுக்குத் தெரியுமா?
C++ -ல் ஒன்றிரண்டு செயற்குறிகள் வெவ்வேறு இடங்களில் வெவ்வேறு பொருள்படும்படி செயல்படுகிறது.
உதாரணமாக (*) எனும் செயற்குறி பெருக்கல் மற்றும் சுட்டு மாறி செயற்குறியாகவும் பயன்படுத்தப்படுகிறது.