मान लीजिए कि हमारे पास एक स्ट्रिंग है जिसमें कुछ शब्दों के साथ एक वाक्य है। हमें प्रत्येक शब्द को नई पंक्तियों में प्रिंट करना होगा। ऐसा करने के लिए हम string.h शीर्षलेख फ़ाइल के अंतर्गत strtok() फ़ंक्शन का उपयोग कर सकते हैं। यह फ़ंक्शन स्ट्रिंग और एक डिलीमीटर लेता है। यहाँ सीमांकक रिक्त स्थान " " है।
इसलिए, यदि इनपुट s ="आइए कुछ स्ट्रिंग टोकनिंग फन देखें" जैसा है, तो आउटपुट होगा
Let us see some string tokenizing fun
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -
-
टोकन:=strtok(s, " ") का उपयोग करके पहला शब्द यहाँ सीमांकक है " "
-
जबकि टोकन शून्य नहीं है, यह करें:
-
टोकन प्रदर्शित करें
-
टोकन:=s का अगला टोकन, अब से NULL को समान सीमांकक स्थान " " के साथ strtok के पहले तर्क के रूप में पास करें।
-
उदाहरण
आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -
#include <stdio.h> #include <string.h> int main(){ char s[] = "Let us see some string tokenizing fun"; char* token = strtok(s, " "); while (token) { printf("%s\n", token); token = strtok(NULL, " "); } }
इनपुट
Let us see some string tokenizing fun
आउटपुट
Let us see some string tokenizing fun