C टोकन, कीवर्ड और पहचानकर्ता: प्रकार और उदाहरण

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

सी में टोकन सबसे छोटी व्यक्तिगत इकाइयाँ होती हैं जिन्हें कंपाइलर पढ़ता है, और प्रत्येक सी प्रोग्राम छह प्रकार के टोकन से बना होता है: कीवर्ड, पहचानकर्ता, स्थिरांक, स्ट्रिंग, ऑपरेटर और सी वर्ण सेट से लिए गए विशेष प्रतीक।

  • 🔤 अक्षरों का समूह: C सोर्स कोड में अक्षर, अंक, रिक्त स्थान और विशेष वर्णों का उपयोग होता है, जो मिलकर प्रत्येक टोकन और प्रतीक का निर्माण करते हैं।
  • 🧩 छह प्रकार के टोकन: कंपाइलर एक प्रोग्राम को कीवर्ड, आइडेंटिफायर, कांस्टेंट, स्ट्रिंग, ऑपरेटर और विशेष प्रतीकों में विभाजित करता है।
  • 🔑 कीवर्ड: C भाषा में int, for और return जैसे 32 छोटे अक्षरों वाले कीवर्ड आरक्षित हैं, जिनमें से प्रत्येक का एक निश्चित अर्थ होता है जिसे आप पुनर्परिभाषित नहीं कर सकते।
  • पहचानकर्ता: वेरिएबल और फ़ंक्शन के लिए उपयोगकर्ता द्वारा परिभाषित नाम अक्षर या अंडरस्कोर से शुरू होने चाहिए और आरक्षित कीवर्ड से बचना चाहिए।
  • 🔢 स्थिरांक और स्ट्रिंग: स्थिरांकों में निश्चित मान होते हैं, जबकि स्ट्रिंग लिटरल में वर्णों को डबल कोटेशन मार्क के अंदर समूहित किया जाता है और अंत में एक नल कैरेक्टर होता है।
  • 🤖 एआई सहायता: GitHub Copilot और इसी तरह के सहायक वैध पहचानकर्ताओं का सुझाव देते हैं, कीवर्ड टकराव को चिह्नित करते हैं और C कोडिंग को गति देते हैं।

C टोकन, पहचानकर्ता और कीवर्ड

C भाषा में कैरेक्टर सेट क्या होता है?

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

C भाषा में एक कैरेक्टर सेट को निम्नलिखित भागों में विभाजित किया जाता है:

  • पत्र
  • Numbers
  • विशेष वर्ण
  • सफेद स्थान (रिक्त स्थान)

कंपाइलर वर्णों के उपयोग को हमेशा अनदेखा करता है, लेकिन डेटा को फॉर्मेट करने के लिए इनका व्यापक रूप से उपयोग किया जाता है। C प्रोग्रामिंग में वर्ण सेट निम्नलिखित है:

1) पत्र

  • अपरकेस वर्ण (AZ)
  • लोअरकेस वर्ण (az)

2) Numbers

  • 0 से 9 तक के सभी अंक

3) खाली स्थान

  • खाली जगह
  • नई पंक्ति
  • कैरिज रिटर्न
  • क्षैतिज टैब

4) विशेष पात्र

C भाषा के विशेष वर्णों को दी गई तालिका में दर्शाया गया है:

विशेष वर्ण विवरण
, (अल्पविराम) { (घुंघराले ब्रैकेट खोलें)
। (अवधि) } (बंद करने वाला कर्ली ब्रैकेट)
; (अर्धविराम) [ (बायां कोष्ठक)
: (कोलन) ] (दायां कोष्ठक)
? (प्रश्न चिह्न) ( (बाएं कोष्ठक खोलें)
' (अपोस्ट्रोफी) ) (दायां कोष्ठक बंद करें)
” (दोहरा उद्धरण चिह्न) और (एम्परसेंड)
! (विस्मयादिबोधक चिह्न) ^ (कैरेट)
|(ऊर्ध्वाधर पट्टी) + (जोड़)
/ (फौरवर्ड स्लैश) – (उपtrac(शन)
\ (बैकवर्ड स्लैश) * (गुणन)
~ (टिल्ड) / (विभाजन)
_ (अंडरस्कोर) > (से बड़ा या बंद कोण ब्रैकेट)
$ (डॉलर चिह्न) < (कम या खुलने वाला कोण ब्रैकेट)
% (प्रतिशत चिह्न) # (हैश चिह्न)

C में टोकन क्या होता है?

एक टोकन C प्रोग्राम की सबसे छोटी इकाई है। यह आपके C प्रोग्राम में आने वाले प्रत्येक शब्द और विराम चिह्न को दर्शाता है। कंपाइलर प्रोग्राम को यथासंभव छोटी इकाइयों (टोकन) में तोड़ता है और संकलन के विभिन्न चरणों को आगे बढ़ाता है। एक टोकन को छह अलग-अलग प्रकारों में विभाजित किया गया है, जैसे कि कीवर्ड, Operaटोर, स्ट्रिंग्स, स्थिरांक, विशेष वर्ण और पहचानकर्ता।

C में छह प्रकार के टोकन होते हैं

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

C में कीवर्ड

C भाषा में, प्रत्येक शब्द या तो कीवर्ड हो सकता है या आइडेंटिफायर।

कीवर्ड्स के अर्थ निश्चित होते हैं और इन्हें बदला नहीं जा सकता। ये C प्रोग्राम के मूलभूत तत्व होते हैं। C में कुल 32 कीवर्ड्स होते हैं। कीवर्ड्स छोटे अक्षरों में लिखे जाते हैं।

नीचे दी गई तालिका C भाषा में प्रयुक्त कीवर्ड्स को दर्शाती है:

में कीवर्ड C Programming Language
स्वत: डबल int struct
तोड़ना अन्य लंबा स्विच
मामला एनम रजिस्टर टंकण
टैंक बाहरी वापसी संघ
const कम नाव अहस्ताक्षरित
जारी रखने के एसटी पर हस्ताक्षर किए शून्य
चूक गोटो इस आकार का परिवर्तनशील
do if स्थिर जब

C में पहचानकर्ता

एक पहचानकर्ता प्रोग्राम में किसी तत्व को दिया गया नाम होता है, उदाहरण के लिए, एक तत्व का नाम। परिवर्तनशील या एक फ़ंक्शन। पहचानकर्ता सी भाषा आइडेंटिफ़ायर उपयोगकर्ता द्वारा परिभाषित नाम होते हैं जिनमें C मानक वर्ण सेट का उपयोग किया जाता है। जैसा कि नाम से पता चलता है, आइडेंटिफ़ायर का उपयोग प्रोग्राम में किसी विशेष तत्व की पहचान करने के लिए किया जाता है। प्रत्येक आइडेंटिफ़ायर का एक अद्वितीय नाम होना चाहिए। आइडेंटिफ़ायर के लिए निम्नलिखित नियमों का पालन किया जाना चाहिए:

  • पहला अक्षर हमेशा वर्णमाला या अंडरस्कोर होना चाहिए।
  • इसे केवल अक्षरों, संख्याओं या अंडरस्कोर का उपयोग करके बनाया जाना चाहिए।
  • किसी कीवर्ड को पहचानकर्ता के रूप में उपयोग नहीं किया जा सकता।
  • इसमें कोई रिक्त स्थान वर्ण नहीं होना चाहिए।
  • नाम अर्थपूर्ण होना चाहिए.

C में स्थिरांक

एक स्थिरांक एक ऐसा टोकन होता है जिसका मान प्रोग्राम के निष्पादन के दौरान नहीं बदलता है। C स्थिरांक आपको निश्चित डेटा, जैसे कि संख्याएँ या टेक्स्ट, को संग्रहीत करने और उसे आकस्मिक संशोधन से बचाने की अनुमति देते हैं। वे कुछ सामान्य श्रेणियों में आते हैं:

  • पूर्णांक स्थिरांक — पूर्ण संख्याएँ जैसे 10, -45, या 0।
  • फ्लोटिंग-पॉइंट स्थिरांक — दशमलव बिंदु वाली वास्तविक संख्याएँ जैसे 3.14 या -0.5।
  • वर्ण स्थिरांक — एकल उद्धरण चिह्नों के भीतर एक अक्षर, जैसे 'A' या '9'।
  • स्ट्रिंग स्थिरांक — दोहरे उद्धरण चिह्नों के भीतर वर्णों का एक क्रम जैसे “Guru99 "।

आप एक स्थिरांक को परिभाषित कर सकते हैं const योग्यता या #define उदाहरण के लिए, प्रीप्रोसेसर निर्देश const int DAYS = 7;निश्चित मानों की घोषणा के बारे में अधिक जानकारी के लिए, C पर दिए गए गाइड को देखें। चर, डेटा प्रकार और स्थिरांक.

सी में स्ट्रिंग्स

C में स्ट्रिंग एक आयामी वर्णों का ऐरे होता है, जिसके अंत में एक नल कैरेक्टर (\0) होता है। चूंकि C में स्ट्रिंग के लिए कोई समर्पित डेटा प्रकार नहीं है, इसलिए स्ट्रिंग लिटरल को कैरेक्टर ऐरे के रूप में संग्रहीत किया जाता है, और नल कैरेक्टर यह दर्शाता है कि टेक्स्ट कहाँ समाप्त होता है। इससे लाइब्रेरी फ़ंक्शन बिना किसी अलग लंबाई काउंटर के स्ट्रिंग का अंत खोज सकते हैं।

आप दो सामान्य तरीकों से स्ट्रिंग बना सकते हैं:

  • एक कैरेक्टर ऐरे के रूप में: char name[] = "Guru99";
  • एक लिटरल के लिए एक पॉइंटर के रूप में: char *name = "Guru99";

दोनों फॉर्म छह दृश्यमान वर्णों के साथ-साथ टर्मिनेटिंग नल कैरेक्टर को भी स्टोर करते हैं। कैरेक्टर एरे और टेक्स्ट हैंडलिंग के बारे में अधिक जानने के लिए, ट्यूटोरियल पढ़ें। C में स्ट्रिंग्स.

Operaसी में टॉर्स

ऑपरेटर एक ऐसा टोकन है जो कंपाइलर को एक या अधिक ऑपरेंड पर एक विशिष्ट गणितीय, संबंधपरक या तार्किक ऑपरेशन करने का निर्देश देता है। Operaटॉर्स, C प्रोग्राम के क्रिया प्रतीक होते हैं, और जिन मानों पर वे कार्य करते हैं उन्हें ऑपरेंड कहा जाता है। C इन्हें कई समूहों में बाँटता है:

  • अंकगणितीय आपरेटर — +, -, *, /, और % जैसी गणनाएँ करें।
  • संबंधपरक संकारक — दो मानों की तुलना करना, जैसे ==, !=, >, और <।
  • लॉजिकल ऑपरेटर्स — &&, ||, और ! जैसी स्थितियों को संयोजित करें।
  • असाइनमेंट ऑपरेटर — किसी चर में मान संग्रहीत करना, जैसे = और +=।
  • बिटवाइज ऑपरेटर — &, |, ^, और ~ जैसे अलग-अलग तत्वों पर काम करें।

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

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

जी हां। C एक केस-सेंसिटिव भाषा है, इसलिए अपरकेस और लोअरकेस अक्षरों को अलग-अलग माना जाता है। सभी 32 कीवर्ड लोअरकेस में लिखे जाने चाहिए, और Total और total जैसे आइडेंटिफायर एक ही प्रोग्राम में दो अलग-अलग तत्वों को संदर्भित करते हैं।

C मानक कोई सख्त सीमा निर्धारित नहीं करता है, लेकिन एक अनुरूप संकलक को आंतरिक पहचानकर्ता के केवल पहले 63 वर्णों और बाह्य पहचानकर्ता के 31 वर्णों को ही महत्वपूर्ण मानना ​​चाहिए।ping नाम संक्षिप्त और वर्णनात्मक होने से सुवाह्यता संबंधी अप्रत्याशित समस्याओं से बचा जा सकता है।

नहीं। रिक्त स्थान, टैब, नई लाइनें और टिप्पणियाँ ऐसे विभाजक हैं जिनका उपयोग कंपाइलर टोकन को अलग करने के लिए करता है, और फिर उन्हें हटा देता है। इन्हें छह प्रकार के टोकन में नहीं गिना जाता है, हालाँकि स्ट्रिंग लिटरल के अंदर एक रिक्त स्थान महत्वपूर्ण हो सकता है।

पहले चरण को शाब्दिक विश्लेषण कहा जाता है, जिसमें संकलक स्रोत पाठ को अक्षर-दर-अक्षर स्कैन करता है और उन्हें सबसे छोटी अर्थपूर्ण इकाइयों में समूहित करता है। फिर प्रत्येक टोकन को कीवर्ड, पहचानकर्ता, स्थिरांक, स्ट्रिंग, ऑपरेटर या विशेष प्रतीक के रूप में वर्गीकृत किया जाता है।

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

एक कैरेक्टर कांस्टेंट सिंगल कोटेशन मार्क में लिखा एक कैरेक्टर होता है, जैसे 'A', और यह एक बाइट लेता है। एक स्ट्रिंग लिटरल डबल कोटेशन मार्क में लिखे कैरेक्टरों का एक क्रम होता है, जैसे कि... Guru99, और हमेशा एक छिपे हुए शून्य वर्ण के साथ समाप्त होता है, जिसके लिए एक अतिरिक्त बाइट की आवश्यकता होती है।

जी हां। टाइप करते समय AI कोडिंग सहायक मान्य पहचानकर्ताओं का सुझाव देते हैं, कीवर्ड-आधारित कथनों को पूरा करते हैं और आरक्षित कीवर्ड से मेल न खाने वाले नामों को चिह्नित करते हैं। वे सामान्य भाषा में लिखे गए कमेंट को सही C डिक्लेरेशन में भी बदल सकते हैं, हालांकि आपको जेनरेट किए गए कोड की समीक्षा अवश्य करनी चाहिए।

गिटहब कोपिलॉट यह आपके कमेंट्स या वेरिएबल नामों से C आइडेंटिफ़ायर, कीवर्ड और पूरे स्टेटमेंट को ऑटो-कंप्लीट करता है। यह सार्थक नाम सुझाता है, कीवर्ड टकराव के बारे में चेतावनी देता है और स्टैंडर्ड कोड तैयार करता है, लेकिन हर सुझाव की सावधानीपूर्वक समीक्षा करना ज़रूरी है।

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