c character classification
यह ट्यूटोरियल उदाहरणों के साथ C ++ वर्ण और परिवर्तन कार्यों को समझाता है। कवर किए गए कुछ महत्त्वपूर्ण कार्य हैं इदिगीट, इस्लोवर, इसुपर, इल्फा आदि।:
'लाइब्रेरी फ़ंक्शंस' पर हमारे पिछले ट्यूटोरियल में, हमने विभिन्न हेडर देखे जो कई फ़ंक्शन प्रदान करते हैं जो विभिन्न डेटा प्रकारों पर काम करते हैं। शीर्ष लेख एक ऐसा हेडर है जिसमें ऐसे कार्यों का एक समूह होता है जो व्यक्तिगत वर्णों को वर्गीकृत और उनमें हेरफेर करता है।
=> स्क्रैच से C ++ जानने के लिए यहाँ जाएँ।
हेडर में घोषित कार्य, एक एकल वर्ण (उदाहरण के बराबर) को एक पैरामीटर के रूप में लेते हैं और पूर्णांक मान लौटाते हैं जो या तो बूलियन मान या वर्ण मान हो सकता है। मान 0 (शून्य) गलत इंगित करता है, जबकि 0 (गैर-शून्य) के अलावा कोई मान सत्य इंगित करता है।
इन एकल वर्ण कार्यों का उपयोग हेडर को शामिल करके कार्यक्रम में किया जा सकता है। इन कार्यों का व्यापक रूप से उपयोग किया जाता है और स्वीकार किया जाता है और पात्रों के परीक्षण और परिवर्तन या हेरफेर के लिए C ++ प्रोग्रामिंग में बेहद उपयोगी होते हैं।
इस ट्यूटोरियल में, हम विभिन्न कैरेक्टर फंक्शन्स पर चर्चा करेंगे और देखेंगे कि इनमें से प्रत्येक फंक्शन का इस्तेमाल किसी प्रोग्राम में कैसे किया जा सकता है।
आप क्या सीखेंगे:
C ++ कैरेक्टर फ़ंक्शंस
C ++ कैरेक्टर फ़ंक्शंस वे फ़ंक्शंस हैं जो पैरामीटर के रूप में केवल एकल वर्ण लेते हैं (int के लिए डाली जाती हैं) और परिणामस्वरूप वापस आते हैं। इनमें कुछ नाम बदलने और टॉपर और टॉवलर जैसे कार्यों को परिवर्तित करने के लिए इसालपा, इसाल्नम, इसिडिट, इस्लोवर, आइसुपर इत्यादि जैसे वर्गीकरण कार्य हो सकते हैं जो किसी दिए गए चरित्र को क्रमशः अपरकेस या लोवर में बदल देते हैं।
हेडर में, हमारे पास दो प्रकार के फ़ंक्शन हैं जो नीचे बताए गए हैं।
(i) चरित्र वर्गीकरण कार्य
वर्ण वर्गीकरण फ़ंक्शन का उपयोग यह जांचने के लिए किया जाता है कि फ़ंक्शन के तर्क के रूप में पारित एकल वर्ण एक निश्चित श्रेणी से संबंधित है या नहीं।
हमने वर्ण श्रेणी के कार्यों को सारणीबद्ध किया है, जिसमें नीचे हेडर शामिल हैं:
ऐसा न करें | कार्य का नाम | प्रयोजन प्रयोजन |
---|---|---|
। | कम है | यदि किसी दिए गए वर्ण को छोटा किया जाता है, तो जाँच करता है |
1 | Isalnum | जाँचता है कि क्या दिया गया वर्ण अल्फ़ान्यूमेरिक है |
दो | isalpha | जाँचता है कि चरित्र वर्णनात्मक है या नहीं |
३ | रिक्त है | जाँचता है कि चरित्र रिक्त है |
४ | iscntrl | जाँचता है कि यदि दिया गया वर्ण एक नियंत्रण वर्ण है |
५ | isdigit | यदि दिया गया वर्ण एक दशमलव अंक है, तो जांचता है |
६ | इस्तगासा | जाँचता है कि क्या दिए गए वर्ण में चित्रमय निरूपण है |
। | प्रिंट | जाँचता है कि क्या चरित्र एक मुद्रण योग्य चरित्र है |
९ | ispunct | जाँचता है कि क्या चरित्र विराम चिह्न वर्ण है |
१० | क्षेत्र | जांचता है कि क्या चरित्र एक सफेद-स्थान है |
ग्यारह | Isupper | यदि दिया गया पात्र अपरकेस है, तो चेक करता है |
१२ | isxdigit | अगर चरित्र हेक्साडेसिमल अंक की जाँच करता है |
(ii) चरित्र परिवर्तन कार्य
चरित्र परिवर्तन कार्य मामलों के बीच परिवर्तित होते हैं। निम्नलिखित कार्य फ़ाइल में शामिल हैं।
ऐसा न करें | कार्य का नाम | समारोह का उद्देश्य |
---|---|---|
1 | कम करना | अपरकेस चरित्र को कम करने के लिए परिवर्तित करता है |
दो | टॉपर | छोटे चरित्र को अपरकेस में परिवर्तित करता है |
आइए प्रत्येक चरित्र कार्यों (वर्गीकरण और परिवर्तन) को विस्तार से देखें। हम प्रत्येक फ़ंक्शन के लिए एक सरल C ++ प्रोग्रामिंग उदाहरण भी प्रस्तुत करेंगे।
Isalnum
समारोह प्रोटोटाइप: int इस्नालम (int c);
पैरामीटर: c => एक चरित्र जिसे अल्फ़ान्यूमेरिक या नहीं जाँचना चाहिए
प्रतिलाभ की मात्रा:
गैर-शून्य => सी अल्फ़ान्यूमेरिक है
0 => c अल्फ़ान्यूमेरिक नहीं है
विवरण: यह फ़ंक्शन यह जाँचता है कि क्या दिया गया वर्ण c अल्फ़ान्यूमेरिक है या नहीं। अल्फ़ान्यूमेरिक द्वारा, इसका मतलब है कि एक वर्ण A (a) -Z (z) या 0 से 9 के बीच है।
C ++ में, यह फ़ंक्शन स्थानीय-विशिष्ट है और हेडर में इसकी परिभाषा मौजूद है।
उदाहरण:
#include #include using namespace std; int main() { char chary[12] = 'Hello World'; // checking for isalnum() function for (int i=0; i<12; i++) { if (isalnum(chary [i])) cout << chary [i] << ' is alphanumeric' << endl; else cout << chary [i] << ' is not alphanumeric' << endl; } cout << endl; }
आउटपुट:
Isalpha
समारोह प्रोटोटाइप: int isalpha (int c);
पैरामीटर: c-> चरित्र जो कि चेक किया जाना है अगर अल्फ़ाबेटिक या नहीं।
प्रतिलाभ की मात्रा:
गैर-शून्य => c अल्फ़ाबेटिक है
० => वर्णानुक्रम नहीं
विवरण: यह फ़ंक्शन यह जाँचता है कि क्या दिया गया वर्ण c वर्णमाला वर्ण है यानी लोअरकेस और अपरकेस अक्षरों के बीच। इसनलम की तरह यह फ़ंक्शन भी उस लोकल पर निर्भर करता है जिसका हम उपयोग कर रहे हैं।
उदाहरण:
#include #include using namespace std; int main() { char ch_alpha[5] = 'sth1'; for (int i=0; i<5; i++) { if (isalpha(ch_alpha[i])) cout << ch_alpha[i] << ' is an alphabet' << endl; else cout << ch_alpha[i] << ' is not an alphabet' << endl; } cout << endl; }
आउटपुट:
रिक्त है
समारोह प्रोटोटाइप: int isblank (इंट c);
पैरामीटर: c => चरित्र जिसे जाँचना है।
प्रतिलाभ की मात्रा:
गैर-शून्य => वर्ण रिक्त है
0 => वर्ण रिक्त नहीं है
विवरण: यह फ़ंक्शन जाँचता है कि दिया गया पात्र खाली है या नहीं। रिक्त चरित्र एक अंतरिक्ष वर्ण है जिसका उपयोग पाठ की एक पंक्ति में शब्दों को अलग करने के लिए किया जाता है।
C ++ में, isblank फ़ंक्शन का स्थानीय-विशिष्ट संस्करण मौजूद है।
उदाहरण:
#include #include using namespace std; int main() { char ch_alpha[6] = 's t h'; for (int i=0; i<6; i++) { if (isblank(ch_alpha[i])) cout << ch_alpha[i] << ' is a blank' << endl; else cout << ch_alpha[i] << ' is not a blank' << endl; } cout << endl; }
आउटपुट:
आउटपुट में अंतिम पंक्ति पर ध्यान दें जो कहती है कि 'रिक्त नहीं है'। इसका कारण वर्ण सरणी की अंतिम स्थिति है जो किसी मान पर आरंभिक नहीं है लेकिन फिर भी मुद्रण स्थिति है। इसलिए यह रिक्त नहीं है।
Iscntrl
समारोह प्रोटोटाइप: int iscntrl (इंट सी);
पैरामीटर: सी => चरित्र की जाँच की जानी है
प्रतिलाभ की मात्रा:
गैर-शून्य => सी नियंत्रण चरित्र है
0 => c कंट्रोल कैरेक्टर नहीं है
विवरण: फ़ंक्शन जाँचता है कि दिए गए पैरामीटर एक नियंत्रण वर्ण है। एक नियंत्रण चरित्र एक ऐसा चरित्र है जो प्रदर्शन में दिखाई नहीं देता है या मुद्रण की स्थिति पर कब्जा नहीं करता है।
उदाहरण:
#include #include using namespace std; int main() { char ch_alpha[6] = 's
t h'; for (int i=0; i<6; i++) { if (iscntrl(ch_alpha[i])) cout << ch_alpha[i] << ' is a control character' << endl; else cout << ch_alpha[i] << ' is not a control character' << endl; } cout << endl; }
आउटपुट:
Isdigit
समारोह प्रोटोटाइप: int isdigit (इंट c)
पैरामीटर: c => एक ऐसा पात्र जिसे इंट में डाला गया है, जिसका मान चेक किया जाना है।
प्रतिलाभ की मात्रा: गैर-शून्य => सी दशमलव अंक है
0 => c कोई अंक नहीं है
विवरण: यह फ़ंक्शन जाँचता है कि दिया गया पैरामीटर दशमलव अंक है या नहीं। एक वर्ण एक दशमलव अंक है यदि इसका मान 0 और 9 के बीच है।
उदाहरण:
#include #include using namespace std; int main() { char ch_alpha[5] = 'a12b'; for (int i=0; i<5; i++) { if (isdigit(ch_alpha[i])) cout << ch_alpha[i] << ' is a digit' << endl; else cout << ch_alpha[i] << ' is not a digit' << endl; } cout << endl; }
आउटपुट:
इसग्राफ
समारोह प्रोटोटाइप: int isgraph (इंट सी)
पैरामीटर: c => कैरेक्टर कास्ट इंट जिसे आइग्राफ फ़ंक्शन का उपयोग करके जांचा जाता है
प्रतिलाभ की मात्रा:
गैर-शून्य => सी एक चित्रमय प्रतिनिधित्व है
0 => c चित्रमय प्रतिनिधित्व नहीं है
विवरण: यदि फंक्शन दिया गया है तो फंक्शन चेक ग ग्राफिकल रिप्रेजेंटेशन वाला कैरेक्टर है। एक चरित्र जो मुद्रित किया जा सकता है वह चित्रमय प्रतिनिधित्व वाला एक चरित्र है।
उदाहरण:
#include #include using namespace std; int main() { char ch_alpha[6] = 'a~12b'; for (int i=0; i<6; i++) { if (isgraph(ch_alpha[i])) cout << ch_alpha[i] << ' is a graphical character' << endl; else cout << ch_alpha[i] << ' is not a graphical character' << endl; } cout << endl; }
आउटपुट:
कम है
समारोह प्रोटोटाइप: int islower (इंट सी)
पैरामीटर: सी => चरित्र जो कि इस्लोवर फ़ंक्शन का उपयोग करके चेक किया जाना है।
प्रतिलाभ की मात्रा:
गैर- zer0 => c लोअरकेस है
0 => c लोअरकेस नहीं है
विवरण: फ़ंक्शन islower जाँचता है कि दिए गए वर्ण c कम है या नहीं।
एक लोअरकेस वर्ण वह है जिसमें एक मान है: a b c d e f g h I j k l m n o p p r r s t u v w x y z।
उदाहरण:
#include #include using namespace std; int main() { char ch_alpha[4] = 'Sth'; for (int i=0; i<4; i++) { if (islower(ch_alpha[i])) cout << ch_alpha[i] << ' is a lowercase character' << endl; else cout << ch_alpha[i] << ' is not a lowercase character' << endl; } cout << endl; }
आउटपुट:
छाप
समारोह प्रोटोटाइप: इंट स्प्रिंट (इंट सी)
पैरामीटर: c => वह चरित्र जिसे आइप्रिंट छाप का उपयोग करके जांचना है।
प्रतिलाभ की मात्रा:
गैर- zer0 => c मुद्रण योग्य है
0 => c प्रिंट करने योग्य नहीं है
विवरण: यदि दिए गए वर्ण मुद्रण योग्य हैं, तो फ़ुटप्रिंट जाँच करता है। एक मुद्रण योग्य चरित्र वह है जो प्रदर्शन में मुद्रण की स्थिति पर कब्जा कर लेता है।
उदाहरण:
#include #include using namespace std; int main() { char ch_alpha[4] = 'Sth'; for (int i=0; i<4; i++) { if (isprint(ch_alpha[i])) cout << ch_alpha[i] << ' is a printable character' << endl; else cout << ch_alpha[i] << ' is not a printable character' << endl; } cout << endl; }
आउटपुट:
Ispunct
समारोह प्रोटोटाइप: int ispunct (इंट सी)
पैरामीटर: c => वह चरित्र जो ispunct फ़ंक्शन का उपयोग करके जांचा जाना है।
प्रतिलाभ की मात्रा:
गैर- zer0 => c विराम चिह्न वर्ण है
0 => c विराम चिह्न वर्ण नहीं है
विवरण: यह फ़ंक्शन जाँचता है कि दिया गया वर्ण विराम चिह्न वर्ण है या नहीं। एक चरित्र जो एक चित्रमय चरित्र है (इस्ग्राफ से) और एक अल्फ़ान्यूमेरिक (इस्नालम से) को विराम चिह्न वर्ण नहीं कहा जाता है।
उदाहरण:
#include #include using namespace std; int main() { char ch_alpha[8] = 'sth@123'; for (int i=0; i<8; i++) { if (ispunct(ch_alpha[i])) cout << ch_alpha[i] << ' is a punctuation character' << endl; else cout << ch_alpha[i] << ' is not a punctuation character' << endl; } cout << endl; }
आउटपुट:
इसस्पेस
समारोह प्रोटोटाइप: int isspace (int c)
पैरामीटर: सी => चरित्र जो आइस्पेस क्षेत्र का उपयोग करके जांचना है।
प्रतिलाभ की मात्रा:
गैर-शून्य 0 => सी एक सफेद-स्थान है
0 => c सफेद-स्थान नहीं है
विवरण: यह फ़ंक्शन यह जांचता है कि क्या दिया गया वर्ण सफेद स्थान है। 'C' लोकेल के लिए, श्वेत-स्थान वर्ण निम्न में से कोई भी हैं।
उदाहरण:
#include #include using namespace std; int main() { char ch_alpha[7] = 's t
h'; for (int i=0; i<7; i++) { if (isspace(ch_alpha[i])) cout << ch_alpha[i] << ' is a white space' << endl; else cout << ch_alpha[i] << ' is not a white space' << endl; } cout << endl; }
आउटपुट:
Isupper
समारोह प्रोटोटाइप: int isupper (इंट सी)
पैरामीटर: c => चरित्र जो कि isupper फ़ंक्शन का उपयोग करके चेक किया जाना है।
प्रतिलाभ की मात्रा:
गैर- zer0 => c अपरकेस है
0 => c अपरकेस नहीं है
विवरण: फ़ंक्शन आइलवर चेक करता है कि दिया गया वर्ण c अपरकेस है या नहीं।
एक अपरकेस चरित्र वह है जिसमें एक मान है: A B C D E F G H I J K L L M N N P P Q R S S T U V W X Y Z
उदाहरण:
#include #include using namespace std; int main() { char ch_alpha[4] = 'STh'; for (int i=0; i<4; i++) { if (isupper(ch_alpha[i])) cout << ch_alpha[i] << ' is an uppercase character' << endl; else cout << ch_alpha[i] << ' is not an uppercase character' << endl; } cout << endl; }
आउटपुट:
Isxdigit
समारोह प्रोटोटाइप: int isxdigit (इंट c)
पैरामीटर: c => चरित्र जो कि isxdigit फ़ंक्शन का उपयोग करके जांचना है।
प्रतिलाभ की मात्रा:
गैर- zer0 => c हेक्साडेसिमल है
0 => c कोई हेक्साडेसिमल नहीं है
विवरण: यह फ़ंक्शन जाँचता है कि क्या दिया गया वर्ण हेक्साडेसिमल अंक है। वैध हेक्साडेसिमल अंक 0 1 2 3 4 5 6 7 8 9 a b c d e f B B C D E F है
उदाहरण:
#include #include using namespace std; int main() { char ch_alpha[6] = 'sbc10'; for (int i=0; i<6; i++) { if (isxdigit(ch_alpha[i])) cout << ch_alpha[i] << ' is hexadecimal digit' << endl; else cout << ch_alpha[i] << ' is not hexadecimal digit' << endl; } cout << endl; }
आउटपुट:
कम करना
समारोह प्रोटोटाइप: int tolower (इंट c)
पैरामीटर: c => चरित्र जिसे लोअरकेस में बदलना है।
प्रतिलाभ की मात्रा:
सी के निचले बराबर रिटर्न, अपरिवर्तित अन्यथा।
रिटर्न वैल्यू इंटेंस है और इसे स्पष्ट रूप से चार को डाला जा सकता है।
विवरण: यह दिए गए वर्ण c को उसके लोअरकेस समतुल्य में परिवर्तित करता है। यदि किसी दिए गए चरित्र के लिए रूपांतरण संभव नहीं है, तो अपरिवर्तित मूल्य (सी) वापस आ जाता है।
उदाहरण:
#include #include using namespace std; int main() { char ch_alpha[4] = 'STH'; cout< आउटपुट:
STH को लोअरकेस में बदल दिया: sth
टॉपर
समारोह प्रोटोटाइप: int टॉपर (int c)
पैरामीटर: c => चरित्र जिसे अपरकेस में बदलना है
प्रतिलाभ की मात्रा:
सी के ऊपरी बराबर रिटर्न, अपरिवर्तित अन्यथा।
किसी भी साइट पूर्ण संस्करण से मुफ्त वीडियो डाउनलोडर
रिटर्न वैल्यू इंटेंस है और इसे स्पष्ट रूप से चार को डाला जा सकता है।
विवरण: यह दिए गए वर्ण c को उसके अपरकेस समतुल्य में परिवर्तित करता है। यदि किसी दिए गए चरित्र के लिए रूपांतरण संभव नहीं है, तो अपरिवर्तित मूल्य (सी) वापस आ जाता है।
उदाहरण:
#include #include using namespace std; int main() { char ch_alpha[10] = 'tutorials'; cout< आउटपुट:
ट्यूटोरियल लोअरकेस में परिवर्तित हो गए: ट्यूटोरियल
निष्कर्ष
यह C ++ में कैरेक्टर फंक्शन्स पर हमारे ट्यूटोरियल को समाप्त करता है।
इस ट्यूटोरियल में, हमने विभिन्न कार्यों को देखा है जो एकल वर्ण लेते हैं और फिर उन्हें वर्गीकृत करते हैं या उन्हें रूपांतरित करते हैं। हमारे बाद के ट्यूटोरियल में, हम स्ट्रिंग और उनके कार्यों और कक्षाओं से संबंधित चर्चा करेंगे C ++।
=> यहाँ सरल सी ++ प्रशिक्षण श्रृंखला की खोज करें।
अनुशंसित पाठ