C ++ wcstok () - C ++ मानक पुस्तकालय

W ++stok () फ़ंक्शन C ++ में एक अशक्त समाप्त विस्तृत स्ट्रिंग में अगला टोकन देता है।

Wcstok () फ़ंक्शन को हेडर फ़ाइल में परिभाषित किया गया है।

wcstok () प्रोटोटाइप

 wchar_t * wcstok (wchar_t * str, const wchar_t * delim, wchar_t ** ptr);

Wcstok () फ़ंक्शन तीन तर्क लेता है: str, delim और ptr। इस फ़ंक्शन को स्ट्रिंग द्वारा इंगित किए गए विस्तृत स्ट्रिंग में टोकन का पता चलता है। सूचक विभाजक वर्णों को इंगित करता है।

एक ही चौड़ी स्ट्रिंग से टोकन प्राप्त करने के लिए इस फ़ंक्शन को कई बार कहा जा सकता है। दो मामले हैं:

  1. अगर str NULL नहीं है:
    उस वाइड स्ट्रिंग के लिए wcstok () को पहला कॉल माना जाता है। फ़ंक्शन पहले विस्तृत वर्ण की खोज करता है जो कि डेलिम में निहित नहीं है। यदि ऐसा कोई विस्तृत वर्ण नहीं मिला है, तो विस्तृत स्ट्रिंग में कोई टोकन नहीं है। तो एक शून्य सूचक वापस आ गया है।
    यदि ऐसा विस्तृत वर्ण पाया जाता है, तो फंक्शन पर वहाँ एक विस्तृत वर्ण खोजता है, जो परिसीमन में मौजूद है। यदि कोई विभाजक नहीं मिला है, तो str में केवल एक टोकन है। यदि एक विभाजक पाया जाता है, तो इसे L ' 0' से बदल दिया जाता है और सूचक को निम्न वर्ण में * ptr में संग्रहीत किया जाता है। अंत में, फ़ंक्शन पॉइंटर को टोकन की शुरुआत में लौटाता है।
  2. यदि str NULL है:
    कॉल को wcstok के बाद के कॉल के रूप में माना जाता है और फ़ंक्शन वही से जारी रहता है जहां पिछले आमंत्रण में उसी * ptr के साथ छोड़ दिया जाता है।

wcstok () पैरामीटर

  • str: नल को समाप्त करने के लिए पॉइंटर को समाप्त करने के लिए विस्तृत स्ट्रिंग।
  • सीमांकक: अशक्त समाप्त करने के लिए विस्तृत स्ट्रिंग को इंगित करता है जिसमें विभाजक होते हैं।
  • ptr: एक पॉइंटर को एक पॉइंटर को इंगित करने के लिए जो अपने आंतरिक स्थिति को स्टोर करने के लिए wcstok द्वारा उपयोग किया जाता है।

wcstok () वापसी मान

  • Wcstok () फ़ंक्शन पॉइंटर को अगले टोकन की शुरुआत में देता है यदि कोई हो
  • यदि कोई और टोकन नहीं मिलता है तो यह NULL देता है।

उदाहरण: wcstok () फ़ंक्शन कैसे काम करता है?

 #include #include #include using namespace std; int main() ( setlocale(LC_ALL, "en_US.utf8"); wchar_t str() = L"parrot,owl,sparrow,pigeon,crow"; wchar_t delim() = L"u002c";// unicode for comma wchar_t *ptr; wcout << L"The tokens are:" << endl; wchar_t *token = wcstok(str,delim,&ptr); while (token) ( wcout << token << endl; token = wcstok(NULL,delim,&ptr); ) return 0; )

जब आप प्रोग्राम चलाते हैं, तो आउटपुट होगा:

 टोकन हैं: तोता उल्लू गौरैया कबूतर

दिलचस्प लेख...