Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

C++ में सशर्त टर्नरी ऑपरेटर ( ?:)


सशर्त ऑपरेटर (? :) एक टर्नरी ऑपरेटर है (इसमें तीन ऑपरेंड लगते हैं)। सशर्त ऑपरेटर निम्नानुसार काम करता है -

  • पहला ऑपरेंड पूरी तरह से बूल में बदल जाता है। इसका मूल्यांकन किया जाता है और जारी रखने से पहले सभी दुष्प्रभावों को पूरा किया जाता है।
  • यदि पहला ऑपरेंड सत्य (1) का मूल्यांकन करता है, तो दूसरे ऑपरेंड का मूल्यांकन किया जाता है।
  • यदि पहला ऑपरेंड गलत (0) का मूल्यांकन करता है, तो तीसरे ऑपरेंड का मूल्यांकन किया जाता है।

सशर्त ऑपरेटर का परिणाम जो भी ऑपरेंड का मूल्यांकन किया जाता है - दूसरा या तीसरा का परिणाम होता है। सशर्त अभिव्यक्ति में अंतिम दो ऑपरेंड में से केवल एक का मूल्यांकन किया जाता है। सशर्त ऑपरेटर का मूल्यांकन बहुत जटिल है। ऊपर दिए गए चरण इसका एक त्वरित परिचय मात्र थे। सशर्त अभिव्यक्तियों में दाएं से बाएं सहयोगीता होती है। पहला ऑपरेंड इंटीग्रल या पॉइंटर टाइप का होना चाहिए। निम्नलिखित नियम दूसरे और तीसरे ऑपरेंड पर लागू होते हैं -

  • यदि दोनों ऑपरेंड एक ही प्रकार के हैं, तो परिणाम उस प्रकार का होता है।
  • यदि दोनों ऑपरेंड अंकगणित या गणना प्रकार के हैं, तो सामान्य अंकगणितीय रूपांतरण (मानक रूपांतरणों में शामिल) उन्हें एक सामान्य प्रकार में बदलने के लिए किए जाते हैं।
  • यदि दोनों ऑपरेंड सूचक प्रकार के हैं या यदि एक सूचक प्रकार है और दूसरा एक स्थिर व्यंजक है जो 0 का मूल्यांकन करता है, तो सूचक रूपांतरण उन्हें एक सामान्य प्रकार में बदलने के लिए किया जाता है।
  • यदि दोनों ऑपरेंड संदर्भ प्रकार के हैं, तो उन्हें एक सामान्य प्रकार में बदलने के लिए संदर्भ रूपांतरण किए जाते हैं।
  • यदि दोनों ऑपरेंड शून्य प्रकार के हैं, तो सामान्य प्रकार शून्य है।
  • यदि दोनों ऑपरेंड एक ही उपयोगकर्ता-परिभाषित प्रकार के हैं, तो सामान्य प्रकार वह प्रकार है।
  • यदि ऑपरेंड के विभिन्न प्रकार हैं और कम से कम एक ऑपरेंड में उपयोगकर्ता-परिभाषित प्रकार है तो सामान्य प्रकार को निर्धारित करने के लिए भाषा नियमों का उपयोग किया जाता है। (नीचे चेतावनी देखें।)

उदाहरण

#include <iostream>  
using namespace std;  

int main() {  
   int i = 1, j = 2;  
   cout << ( i > j ? i : j ) << " is greater." << endl;  
}

आउटपुट

यह आउटपुट देगा -

2 is greater.

  1. सी # में टर्नरी ऑपरेटर/सशर्त ऑपरेटर क्या है?

    टर्नरी ऑपरेटर सी # में एक सशर्त ऑपरेटर है। यह तीन तर्क लेता है और एक बूलियन अभिव्यक्ति का मूल्यांकन करता है। उदाहरण के लिए - y = (x == 1) ? 70 : 100; ऊपर, यदि पहला ऑपरेंड सत्य (1) का मूल्यांकन करता है, तो दूसरे ऑपरेंड का मूल्यांकन किया जाता है। यदि पहला ऑपरेंड असत्य (0) का मूल्यांकन करता है, तो ती

  1. सी # में टर्नरी ऑपरेटर

    टर्नरी ऑपरेटर सी # में एक सशर्त ऑपरेटर है। यह तीन तर्क लेता है और एक बूलियन अभिव्यक्ति का मूल्यांकन करता है। उदाहरण के लिए - b = (a == 1) ? 20 : 30; ऊपर, यदि पहला ऑपरेंड सत्य (1) का मूल्यांकन करता है, तो दूसरे ऑपरेंड का मूल्यांकन किया जाता है। यदि पहला ऑपरेंड असत्य (0) का मूल्यांकन करता है, तो तीस

  1. पायथन में टर्नरी ऑपरेटर?

    कई प्रोग्रामिंग भाषाएं टर्नरी ऑपरेटर का समर्थन करती हैं, जो मूल रूप से एक सशर्त अभिव्यक्ति को परिभाषित करती हैं। इसी तरह, पायथन में टर्नरी ऑपरेटर का उपयोग बाइनरी स्थिति के परिणाम के आधार पर मूल्य वापस करने के लिए किया जाता है। यह एक इनपुट के रूप में बाइनरी वैल्यू (शर्त) लेता है, इसलिए यह अगर-अन्य क