Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C++

C++ में strchr() फ़ंक्शन


strchr() फ़ंक्शन

C++ में पूर्वनिर्धारित फ़ंक्शन जो स्ट्रिंग हैंडलिंग के लिए उपयोग होता है। दिए गए स्ट्रिंग में किसी अक्षर की पहली घटना ढूंढता है और उसका पॉइंटर लौटाता है। <cstring> हेडर में परिभाषित।

सिंटैक्स

char* strchr(const char* str, int c)

str: खोज की जाने वाली स्ट्रिंग, c: खोजा जाने वाला अक्षर (int के रूप में पास होता है, char में बदल जाता है)।

उदाहरण 1: पहली घटना ढूंढना

#include <iostream>
#include <cstring>
using namespace std;

int main() {
    char str[] = "strings";
    char* c = strchr(str, 's');
    cout << "First occurrence of '" << *c 
         << "' is at position " << c - str + 1;
    return 0;
}

आउटपुट

First occurrence of 's' is at position 1

उदाहरण 2: सफ़िक्स (प्रत्यय) प्रदर्शित करना

#include <iostream>
#include <cstring>
using namespace std;

int main() {
    char str[] = "strings";
    char* c = strchr(str, 'i');
    cout << "Remaining string after first '" << *c 
         << "' is " << c;
    return 0;
}

आउटपुट

Remaining string after first 'i' is ings

कोड व्याख्या

उदाहरण 1

str = "strings", 's' खोजता है। पहली घटना इंडेक्स 0 (पोजीशन 1) पर। c - str पॉइंटर अंकगणित से ऑफसेट देता है।

उदाहरण 2

'i' की पहली घटना इंडेक्स 3 पर। c उस पते को इंगित करता है, इसलिए c प्रिंट करने से "ings" आउटपुट होता है।

वेरिएंट: strrchr()

strrchr() अंतिम घटना ढूंढता है (रिवर्स सर्च)।

char* last = strrchr(str, 's');  // "strings" में अंतिम 's' (इंडेक्स 6)

सावधानियां

  • यदि अक्षर नहीं मिलता, तो NULL लौटाता है - हमेशा जांचें
  • NULL टर्मिनेटर भी खोजा जा सकता है: strchr(str, '\0')
  • केस-सेंसिटिव खोज

C++ स्ट्रिंग विकल्प

#include <string>
std::string s = "strings";
size_t pos = s.find('s');        // 0 (नहीं मिला तो npos)
size_t rpos = s.rfind('s');      // 6 (अंतिम घटना)
string suffix = s.substr(pos);   // "strings" से सफ़िक्स
  1. - C++ में string at() फंक्शन

    इस खंड में, हम देखेंगे कि C++ में at() फंक्शन क्या है। at() फंक्शन का उपयोग दिए गए स्थान पर वर्ण को एक्सेस करने के लिए किया जाता है। इस प्रोग्राम में, हम at() फंक्शन का उपयोग करके प्रत्येक वर्ण के माध्यम से पुनरावृति करेंगे और उन्हें अलग-अलग लाइनों में प्रिंट करेंगे। उदाहरण कोड #include<iostrea

  1. - C++ में प्योर फ़ंक्शन

    प्योर फ़ंक्शन्स समान आर्गुमेंट मानों के लिए हमेशा समान परिणाम लौटाते हैं। वे केवल परिणाम लौटाते हैं और कोई अतिरिक्त साइड इफेक्ट्स नहीं होते जैसे आर्गुमेंट मॉडिफिकेशन, I/O स्ट्रीम, आउटपुट जनरेशन आदि। कुछ प्योर फ़ंक्शन्स हैं: sin(), strlen(), sqrt(), max(), pow(), floor() आदि। कुछ इम्प्योर फ़ंक्शन्स

  1. - C++ में swap() फ़ंक्शन

    swap() फ़ंक्शन दो संख्याओं को स्वैप (अदला-बदली) करने के लिए उपयोग किया जाता है। तीसरे वेरिएबल की आवश्यकता नहीं होती। <algorithm> या <utility> हेडर में परिभाषित (C++11 से)। सिंटैक्स void swap(Type& a, Type& b); उदाहरण 1: मान द्वारा पास (मान बदलते नहीं) #include <bits/stdc++.