Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> सी प्रोग्रामिंग

mbrtowc () C/C++ प्रोग्राम में फंक्शन

इस लेख में हम C++ STL में काम करने, वाक्य रचना और std::mbrtowc() फ़ंक्शन के उदाहरणों पर चर्चा करेंगे।

std::mbrtowc() क्या है?

std::mbrtowc() फ़ंक्शन C++ STL में एक इनबिल्ट फ़ंक्शन है, जिसे हेडर फ़ाइल में परिभाषित किया गया है। mbrtowc() का अर्थ है कि यह संकीर्ण मल्टीबाइट वर्ण स्ट्रिंग को विस्तृत वर्ण में परिवर्तित करता है। इस फ़ंक्शन का उपयोग एक संकीर्ण मल्टीबाइट वर्ण को विस्तृत वर्ण प्रतिनिधित्व में बदलने के लिए किया जाता है।

सिंटैक्स

size_t mbrtowc( wchar_t* pwc, char* str, size_t n, mbstate_t* ps);

पैरामीटर

फ़ंक्शन निम्नलिखित पैरामीटर को स्वीकार करता है -

  • पीडब्ल्यूसी - यह उस स्थान का सूचक है जहां हम चाहते हैं कि आउटपुट संग्रहीत किया जाए।
  • str - कैरेक्टर स्ट्रिंग जो इनपुट के रूप में प्रयोग की जाती है।
  • n - यह उन बाइट्स की संख्या है जिन्हें चेक किया जाना है।
  • ps - जब हम मल्टीबाइट स्ट्रिंग की व्याख्या कर रहे होते हैं तो यह स्टेट ऑब्जेक्ट का पॉइंटर होता है।

रिटर्न वैल्यू

यह फ़ंक्शन रिटर्न मान निम्न स्थिति के अनुसार भिन्न होता है -

  • 0 - फ़ंक्शन शून्य लौटाएगा जब str में जो वर्ण परिवर्तित किया जाना है वह NULL है।
  • 1…n - मल्टीबाइट कैरेक्टर के बाइट्स की संख्या जो कि कैरेक्टर स्ट्रिंग *str.
  • से कन्वर्ट होते हैं।
  • -2 - अगले n बाइट अपूर्ण होने पर हमें -2 मिलेगा लेकिन अभी तक एक मान्य मल्टीबाइट वर्ण है।
  • -1 - जब हम एन्कोडिंग त्रुटि का सामना करते हैं तो हमें -1 मिलता है, *pwc को कुछ भी नहीं लिखा जाता है।

उदाहरण

#include <bits/stdc++.h>
using namespace std;
void print_(const char* ch){
   mbstate_t temp = mbstate_t();
   int cal = strlen(ch);
   const char* i = ch + cal;
   int total;
   wchar_t con;
   while ((total = mbrtowc(&con, ch, i - ch, &temp)) > 0){
      wcout << "Next " << total <<" bytes are the character " << con << '\n';
      ch += total;
   }
}
int main(){
   setlocale(LC_ALL, "en_US.utf8");
   const char* len = u8"z\u00df\u6c34";
   print_(len);
}

आउटपुट

Next 1 bytes are the character z
Next 2 bytes are the character ß
Next 3 bytes are the character 水

उदाहरण

#include <bits/stdc++.h>
using namespace std;
void print_(const char* ch){
   mbstate_t temp = mbstate_t();
   int cal = strlen(ch);
   const char* i = ch + cal;
   int total;
   wchar_t con;
   while ((total = mbrtowc(&con, ch, i - ch, &temp)) > 0){
      wcout << "Next " << total <<" bytes are the character " << con << '\n';
      ch += total;
   }
}
int main(){
   setlocale(LC_ALL, "en_US.utf8");
   const char* len = u8"\xE2\x88\x83y\xE2\x88\x80x\xC2";
   print_(len);
}

आउटपुट

Next 3 bytes are the character ∃
Next 1 bytes are the character y
Next 3 bytes are the character ∀
Next 1 bytes are the character x

  1. mbrtoc16 () सी/सी++ में उदाहरणों के साथ

    इस लेख में हम C++ STL में कार्य, वाक्य रचना और std::mbrtoc16() फ़ंक्शन के उदाहरणों पर चर्चा करेंगे। std::mbrtoc16() क्या है? std::mbrtoc16() फ़ंक्शन C++ STL में एक इनबिल्ट फ़ंक्शन है, जिसे हेडर फ़ाइल में परिभाषित किया गया है। इस फ़ंक्शन का उपयोग एक संकीर्ण मल्टीबाइट वर्ण को UTF-16-वर्ण प्रतिनिधित्

  1. mbsrtowcs() सी/सी++ में कार्य करता है

    इस लेख में हम C++ STL में काम करने, वाक्य रचना और std::mbsrtowcs() फ़ंक्शन के उदाहरणों पर चर्चा करेंगे। std::mbsrtowcs() क्या है? std::mbsrtowcs() फ़ंक्शन C++ STL में एक इनबिल्ट फ़ंक्शन है, जिसे हेडर फ़ाइल में परिभाषित किया गया है। mbsrtowcs() का अर्थ है कि यह नल टर्मिनेटेड मल्टीबाइट कैरेक्टर स्ट्

  1. सिस्टम () सी/सी++ में फंक्शन

    कार्य को देखते हुए सिस्टम () को C/C++ में दिखाना है। सिस्टम () फ़ंक्शन C/C++ मानक पुस्तकालय का एक हिस्सा है। इसका उपयोग उन कमांड को पास करने के लिए किया जाता है जिन्हें कमांड प्रोसेसर या ऑपरेटिंग सिस्टम के टर्मिनल में निष्पादित किया जा सकता है, और अंत में पूरा होने के बाद कमांड को वापस कर देता है।