strstr() फ़ंक्शन string.h में एक पूर्वनिर्धारित फ़ंक्शन है। इसका उपयोग एक स्ट्रिंग में एक सबस्ट्रिंग की घटना को खोजने के लिए किया जाता है। मिलान की यह प्रक्रिया '\0' पर रुकती है और इसे शामिल नहीं करती है।
strstr() का सिंटैक्स इस प्रकार है -
char *strstr( const char *str1, const char *str2)
उपरोक्त सिंटैक्स में, strstr() स्ट्रिंग str1 में स्ट्रिंग str2 की पहली घटना पाता है। एक प्रोग्राम जो strstr() को लागू करता है वह इस प्रकार है -
उदाहरण
#include <iostream> #include <string.h> using namespace std; int main() { char str1[] = "Apples are red"; char str2[] = "are"; char *ptr; ptr = strstr(str1, str2); if(ptr) cout<<"Occurance of \""<< str2 <<"\" in \""<< str1 <<"\" is at position "<<ptr - str1 + 1; else cout<<"There is no occurance of \""<< str2 <<"\" in "<<str1; return 0; }
आउटपुट
उपरोक्त कार्यक्रम का आउटपुट इस प्रकार है -
Occurance of "are" in "Apples are red" is at position 8
उपरोक्त कार्यक्रम में, str1 और str2 को क्रमशः "सेब लाल हैं" और "हैं" मानों के साथ परिभाषित किया गया है। यह नीचे दिया गया है -
char str1[] = "Apples are red"; char str2[] = "are"; char *ptr;
सूचक पीटीआर "सेब लाल हैं" में "हैं" की पहली घटना को इंगित करता है। यह strstr() फ़ंक्शन का उपयोग करके किया जाता है। इसके लिए कोड स्निपेट नीचे दिया गया है -
ptr = strstr(str1, str2);
यदि सूचक ptr में कोई मान है, तो str1 में str2 की स्थिति प्रदर्शित होती है। अन्यथा, यह प्रदर्शित होता है कि ptr1 में ptr2 की कोई घटना नहीं है। यह नीचे दिखाया गया है -
if(ptr) cout<<"Occurance of \""<< str2 <<"\" in \""<< str1 <<"\" is at position "<<ptr - str1 + 1; else cout<<"There is no occurance of \""<< str2 <<"\" in "<<str1;में \""<