सी# चर और Operaउदाहरण के साथ tors

⚡ स्मार्ट सारांश

C# में वैरिएबल उन स्टोरेज स्थानों के नाम होते हैं जिनमें टाइप किए गए मान रखे जाते हैं, जबकि ऑपरेटर उन मानों पर अंकगणित, तुलना और तर्क जैसी क्रियाएं करते हैं। ये दोनों मिलकर C# प्रोग्राम द्वारा निष्पादित प्रत्येक एक्सप्रेशन और गणना का आधार बनते हैं।

  • 📦 चर: एक वेरिएबल एक नामित स्टोरेज एरिया होता है जिसका डेटा टाइप उसके मान के लिए आकार, लेआउट और मान्य ऑपरेशन्स को निर्धारित करता है।
  • 🔤 घोषणा: एक स्ट्रिंग और एक इंट32 को घोषित करना यह दर्शाता है कि C# टेक्स्ट और पूर्णांकों को कैसे संग्रहीत करता है, और फिर उन्हें Console.Write का उपयोग करके प्रिंट करता है।
  • Operaटोर समूह: अंकगणितीय, संबंधपरक और तार्किक ऑपरेटर गणित, तुलना और बूलियन जांच को कवर करते हैं जो प्रोग्राम के निर्णयों को संचालित करते हैं।
  • 🧮 असाइनमेंट और बिटवाइज़: जोड़-बराबर जैसे संयुक्त ऑपरेटर अपडेट को छोटा करते हैं, जबकि बिटवाइज ऑपरेटर पूर्णांक मानों के अलग-अलग बिट्स पर काम करते हैं।
  • 🔢 प्राथमिकता: Operaप्राथमिकता और साहचर्यता यह निर्धारित करते हैं कि C# एक जटिल अभिव्यक्ति के भागों का मूल्यांकन किस क्रम में करेगा।
  • 🤖 एआई सहायता: GitHub Copilot और ML.NET वेरिएबल घोषणाओं, ऑपरेटर लॉजिक को उत्पन्न करने और मानों को मशीन लर्निंग सुविधाओं में मैप करने में मदद करते हैं।

C# वैरिएबल और Operaमरोड़

C# चर

एक चर एक भंडारण क्षेत्र को दिया गया नाम है जिसका उपयोग विभिन्न डेटा प्रकारों के मानों को संग्रहीत करने के लिए किया जाता है। C# में प्रत्येक चर का एक विशिष्ट प्रकार होना आवश्यक है, जो चर की मेमोरी के आकार और लेआउट को निर्धारित करता है।

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

उदाहरण के लिए, यदि हमारे पास एक पूर्णांक चर है, तो जोड़ और घटाव जैसी संक्रियाएँ की जा सकती हैं।tracवेरिएबल पर क्रिया की जा सकती है। एक प्रोग्राम में कई वेरिएबल घोषित किए जा सकते हैं।

आइए विभिन्न डेटा प्रकारों के एकाधिक चरों की घोषणा का एक त्वरित उदाहरण देखें।

हमारे उदाहरण में, हम दो चर परिभाषित करेंगे, एक 'स्ट्रिंग' प्रकार का और दूसरा 'पूर्णांक' प्रकार का। फिर हम इन चरों के मानों को कंसोल पर प्रदर्शित करेंगे। प्रत्येक उदाहरण के लिए, हम अपने Program.cs फ़ाइल में केवल मुख्य फ़ंक्शन को संशोधित करेंगे।

C# चर

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DemoApplication
{
 class Program 
 {
  static void Main(string[] args) 
  {
   String message="The value is ";
   Int32 val=30;
   
   Console.Write(message+val);
   Console.ReadKey();
  }
 }
}

Code स्पष्टीकरण: -

  1. स्ट्रिंग डेटा प्रकार का एक चर घोषित किया गया है। चर का नाम 'संदेश' है। चर का मान "मान है"।
  2. डेटा प्रकार Integer (Int32) का एक चर घोषित किया गया है। चर का नाम 'val' है। चर का मान 30 है।
  3. अंत में Console.write कथन का उपयोग स्ट्रिंग और इंटेगर वेरिएबल दोनों के मान को आउटपुट करने के लिए किया जाता है।

यदि उपरोक्त कोड ठीक से दर्ज किया गया है और प्रोग्राम सफलतापूर्वक निष्पादित होता है, तो निम्नलिखित आउटपुट प्रदर्शित होगा।

आउटपुट:

C# चर

आउटपुट से, आप देख सकते हैं कि स्ट्रिंग और पूर्णांक चर दोनों के मान कंसोल पर प्रदर्शित होते हैं।

अब जबकि वैरिएबल में मान समाहित हो सकते हैं, अगला चरण उन मानों पर कार्रवाई करना है। Operaविभिन्न डेटा प्रकारों के मानों पर संक्रियाएँ करने के लिए + ऑपरेटर का उपयोग किया जाता है। उदाहरण के लिए, दो संख्याओं को जोड़ने के लिए + ऑपरेटर का उपयोग किया जाता है।

आइये विभिन्न क्षेत्रों के लिए उपलब्ध ऑपरेटरों की तालिका देखें जानकारी का प्रकार.

C# Operaमरोड़

अंकगणित Operaमरोड़

ये वे ऑपरेटर हैं जिनका उपयोग संख्याओं पर गणितीय संक्रियाएँ करने के लिए किया जाता है। नीचे उपलब्ध ऑपरेटरों की सूची दी गई है। C#.

Operaटो विवरण
+ दो ऑपरेंड जोड़ता है
- उपtracयह पहले ऑपरेंड से दूसरा ऑपरेंड है
* दोनों ऑपरेंड को गुणा करता है
/ अंश को हर से विभाजित करता है
% मापांक Operator और पूर्णांक विभाजन के बाद शेष
++ इंक्रीमेंट ऑपरेटर पूर्णांक मान को एक से बढ़ाता है
- घटाव ऑपरेटर पूर्णांक मान को एक से घटाता है

संबंधपरक Operaमरोड़

ये ऑपरेटर संख्याओं पर रिलेशनल ऑपरेशन करने के लिए उपयोग किए जाते हैं। नीचे C# में उपलब्ध रिलेशनल ऑपरेटरों की सूची दी गई है।

Operaटो विवरण
== जाँचता है कि दो ऑपरेंडों के मान समान हैं या नहीं, यदि हाँ तो शर्त सत्य हो जाती है।
!= जाँचता है कि दो ऑपरेंड के मान समान हैं या नहीं, यदि मान समान नहीं हैं तो स्थिति सत्य हो जाती है।
> जाँचता है कि क्या बाएँ ऑपरेंड का मान दाएँ ऑपरेंड के मान से अधिक है, यदि हाँ तो शर्त सत्य हो जाती है।
< जाँचता है कि क्या बाएँ ऑपरेंड का मान दाएँ ऑपरेंड के मान से कम है, यदि हाँ तो स्थिति सत्य हो जाती है।
>= जाँचता है कि क्या बाएँ ऑपरेंड का मान दाएँ ऑपरेंड के मान से अधिक या बराबर है, यदि हाँ तो शर्त सत्य हो जाती है।
<= जाँचता है कि क्या बाएँ ऑपरेंड का मान दाएँ ऑपरेंड के मान से कम या बराबर है, यदि हाँ तो स्थिति सत्य हो जाती है।

तार्किक Operaमरोड़

ये ऑपरेटर मानों पर तार्किक संचालन करने के लिए उपयोग किए जाते हैं। नीचे C# में उपलब्ध ऑपरेटरों की सूची दी गई है।

Operaटो विवरण
&& यह लॉजिकल AND ऑपरेटर है। यदि दोनों ऑपरेंड सत्य हैं, तो शर्त सत्य हो जाती है।
|| यह लॉजिकल OR ऑपरेटर है। यदि कोई भी ऑपरेंड सत्य है, तो शर्त सत्य हो जाती है।
! यह लॉजिकल NOT ऑपरेटर है.

आइए एक त्वरित उदाहरण से समझते हैं कि .NET में ऑपरेटरों का उपयोग कैसे किया जा सकता है।

हमारे उदाहरण में, हम 2 पूर्णांक चर और एक बूलियन चर परिभाषित करेंगे। फिर हम उन पर अंकगणितीय, संबंधपरक और तार्किक संक्रियाएँ करेंगे।

C# Operaमरोड़

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DemoApplication
{
 class Program 
 {
  static void Main(string[] args) 
  {
   Int32 val1 = 10,val2 = 20;
   bool status = true;
   
   Console.WriteLine(val1 + val2);
   Console.WriteLine(val1 < val2);
   Console.WriteLine(!(status));
   Console.ReadKey();
  }
 }
}

Code स्पष्टीकरण: -

  1. दो पूर्णांक चर परिभाषित किए गए हैं, एक val1 है और दूसरा val2 है। इनका उपयोग संबंधपरक और अंकगणितीय संचालन को प्रदर्शित करने के लिए किया जाएगा। तार्किक संचालन को प्रदर्शित करने के लिए एक बूलियन चर परिभाषित किया गया है।
  2. अंकगणितीय ऑपरेशन का एक उदाहरण दिखाया गया है जिसमें जोड़ ऑपरेटर val1 और val2 पर किया जाता है। परिणाम कंसोल में लिखा जाता है।
  3. रिलेशनल ऑपरेशन का एक उदाहरण दिखाया गया है जिसमें val1 और val2 पर less than ऑपरेटर चलाया जाता है। परिणाम कंसोल में लिखा जाता है।
  4. तार्किक ऑपरेशन का एक उदाहरण दिखाया गया है, जिसमें तार्किक ऑपरेटर (!) को स्टेटस वैरिएबल पर लागू किया जाता है। तार्किक NOT ऑपरेटर किसी भी बूलियन मान के वर्तमान मान को उलट देता है। इसलिए यदि बूलियन मान 'सत्य' है, तो तार्किक NOT मान 'असत्य' लौटाएगा और इसके विपरीत। हमारे मामले में चूंकि स्टेटस वैरिएबल का मान 'सत्य' है, इसलिए परिणाम 'असत्य' दिखाएगा। परिणाम कंसोल में लिखा जाता है।

यदि उपरोक्त कोड ठीक से दर्ज किया गया है और प्रोग्राम सफलतापूर्वक निष्पादित हुआ है, तो आउटपुट प्रदर्शित किया जाएगा।

आउटपुट:

C# Operaमरोड़

C# असाइनमेंट Operaमरोड़

असाइनमेंट ऑपरेटर किसी एक्सप्रेशन के परिणाम को एक वेरिएबल में स्टोर करते हैं। मूल असाइनमेंट ऑपरेटर केवल बराबर का चिह्न होता है, और C# में ऐसे कंपाउंड ऑपरेटर भी होते हैं जो असाइनमेंट को अंकगणितीय या बिटवाइज़ ऑपरेशन के साथ जोड़ते हैं। ये संक्षिप्त रूप अपडेट स्टेटमेंट को छोटा और पढ़ने में आसान बनाते हैं।

Operaटो विवरण
= दाएँ ऑपरेंड का मान बाएँ ऑपरेंड को असाइन करता है
+= दाएँ ऑपरेंड को बाएँ ऑपरेंड में जोड़ता है और परिणाम को असाइन करता है।
-= उपtracयह बाएँ ऑपरेंड से दाएँ ऑपरेंड को अलग करता है और परिणाम को असाइन करता है।
*= दोनों ऑपरेंड को गुणा करता है और परिणाम को बाएं ऑपरेंड को असाइन करता है।
/= यह फ़ंक्शन बाएँ ऑपरेंड को दाएँ ऑपरेंड से विभाजित करता है और परिणाम को असाइन करता है।
%= दोनों ऑपरेंड का मॉड्यूल्स लेता है और शेषफल को बाएं ऑपरेंड को सौंप देता है।

उदाहरण के लिए, count += 5 लिखना, count = count + 5 लिखने का एक छोटा तरीका है। संयुक्त असाइनमेंट ऑपरेटर सभी अंकगणितीय ऑपरेटरों के साथ-साथ बिटवाइज़ ऑपरेटरों के साथ भी काम करते हैं, इसलिए वे अक्सर लूप और काउंटरों के अंदर दिखाई देते हैं जहां किसी मान को बार-बार अपडेट किया जाता है।

C# बिटवाइज Operaमरोड़

बिटवाइज़ ऑपरेटर पूर्णांकों के मानों के अलग-अलग बिट्स पर कार्य करते हैं, न कि पूर्ण संख्या पर। ये फ़्लैग सेट करने, मानों को छिपाने और दो की घातों से तेज़ गुणा या भाग करने जैसे निम्न-स्तरीय कार्यों के लिए उपयोगी होते हैं।

Operaटो विवरण
& बिटवाइज़ AND प्रत्येक परिणाम बिट को 1 पर तभी सेट करता है जब दोनों मिलान करने वाले बिट 1 हों।
| बिटवाइज़ OR विधि परिणाम के प्रत्येक बिट को 1 पर सेट करती है जब दोनों में से कोई भी मिलान करने वाला बिट 1 होता है।
^ बिटवाइज़ XOR प्रत्येक परिणाम बिट को 1 पर तभी सेट करता है जब दो मेल खाने वाले बिट भिन्न हों।
~ बिटवाइज़ कॉम्प्लीमेंट अपने एकल ऑपरेंड के प्रत्येक बिट को उलट देता है।
<< लेफ्ट शिफ्ट बिट्स को बाईं ओर ले जाता है और खाली स्थानों को शून्य से भर देता है।
>> राइट शिफ्ट बिट्स को दी गई संख्या के अनुसार दाईं ओर ले जाता है।

उदाहरण के लिए, अभिव्यक्ति 5 & 3 दोनों संख्याओं के बिट्स की तुलना करती है और 1 लौटाती है। चूंकि एक सिंगल लेफ्ट शिफ्ट किसी मान को दोगुना कर देता है, इसलिए बिटवाइज़ ऑपरेटर कुछ गणनाओं को उनके अंकगणितीय समकक्षों की तुलना में तेज़ी से कर सकते हैं, जो ग्राफिक्स और एम्बेडेड कोड में महत्वपूर्ण है।

C# Operaप्राथमिकता और साहचर्य के लिए

जब किसी एक्सप्रेशन में कई ऑपरेटर होते हैं, तो C# उन्हें केवल बाएं से दाएं क्रम में ही मूल्यांकन नहीं करता है। Operaप्राथमिकता यह निर्धारित करती है कि विभिन्न ऑपरेटर किस क्रम में चलेंगे, और साहचर्यता यह तय करती है कि जब दो ऑपरेटर समान प्राथमिकता साझा करते हैं तो किस क्रम में चलेंगे।

  • प्राथमिकता: गुणा और भाग, जोड़ और घटाव से पहले किए जाते हैं।tracइसलिए 2 + 3 * 4 का मान 14 होता है, न कि 20।
  • बाएँ सहसंयोजकता: अधिकांश बाइनरी ऑपरेटर बाएं से दाएं समूह बनाते हैं, इसलिए a – b – c का मूल्यांकन (a – b) – c के रूप में किया जाता है।
  • दायां साहचर्य: असाइनमेंट और कंडीशनल ऑपरेटर दाएं से बाएं समूह बनाते हैं, इसलिए x = y = z पहले z को y को असाइन करता है।
  • कोष्ठक: लपेटेंping कोष्ठकों में दिए गए व्यंजक का एक भाग डिफ़ॉल्ट क्रम को ओवरराइड करता है और इच्छित गणना को स्पष्ट करता है।

पूर्ण प्राथमिकता सारणी को याद करने के बजाय कोष्ठकों पर निर्भर रहने से जटिल अभिव्यक्तियाँ पठनीय बनी रहती हैं और सूक्ष्म गणना त्रुटियों को रोकने में मदद मिलती है।

अक्सर पूछे जाने वाले प्रश्न

एक वेरिएबल का मान निष्पादन के दौरान बदल सकता है, जबकि const कीवर्ड के साथ घोषित किया गया एक स्थिरांक संकलन समय पर तय हो जाता है और कभी नहीं बदलता। वेरिएबल का उपयोग ऐसे डेटा के लिए करें जो अपडेट होता रहता है और पाई जैसे स्थिर मानों के लिए स्थिरांक का उपयोग करें।

var कीवर्ड कंपाइलर को लोकल वेरिएबल के टाइप को उसके इनिशियलाइज़र से समझने की सुविधा देता है, इसलिए var count = 10 एक int वेरिएबल बनाता है। वेरिएबल अभी भी स्ट्रॉन्गली टाइप्ड है; var केवल टाइप का नाम स्पष्ट रूप से लिखने की आवश्यकता को समाप्त करता है।

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

एक यूनरी ऑपरेटर एक ऑपरेंड पर काम करता है, जैसे कि ! (लॉजिकल नॉट) या ++ (इंक्रीमेंट)। एक बाइनरी ऑपरेटर दो ऑपरेंड पर काम करता है, जैसे कि + (जोड़ने के लिए) या && (लॉजिकल एंड के लिए)। C# ​​में एक टर्नरी ऑपरेटर भी होता है।

त्रिपक्षीय ऑपरेटर ?: एक if-else कथन का संक्षिप्त रूप है। यह एक शर्त का मूल्यांकन करता है, फिर शर्त सही होने पर पहला मान और गलत होने पर दूसरा मान लौटाता है, जैसे कि int max = a > b ? a : b।

नल-कोलेसिंग ऑपरेटर ?? अपने बाएँ ऑपरेंड को लौटाता है जब वह मान नल नहीं होता है, अन्यथा यह दाएँ ऑपरेंड को लौटाता है। उदाहरण के लिए, name ?? “Guest” एक डिफ़ॉल्ट मान प्रदान करता है। ??= वेरिएंट केवल तभी मान असाइन करता है जब लक्ष्य वर्तमान में नल हो।

हाँ। GitHub Copilot, Visual Studio के अंदर वेरिएबल डिक्लेरेशन, ऑपरेटर एक्सप्रेशन और कंपाउंड असाइनमेंट का सुझाव देता है। VS Codeऔर यह किसी टिप्पणी से गणना पूरी कर सकता है। Revसही डेटा प्रकारों और अपेक्षित वरीयता क्रम के लिए प्रत्येक सुझाव की समीक्षा करें।

ML.NET पाइपलाइनें फ़ीचर और लेबल को रखने के लिए C# वैरिएबल पर और प्रशिक्षण से पहले उन्हें सामान्य करने या संयोजित करने के लिए ऑपरेटरों पर निर्भर करती हैं। संख्यात्मक और बूलियन मान मॉडल इनपुट से स्पष्ट रूप से मैप होते हैं, जिससे मशीन लर्निंग वर्कफ़्लो मज़बूती से टाइप किया हुआ और पूर्वानुमानित रहता है।

इस पोस्ट को संक्षेप में इस प्रकार लिखें: