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

C भाषा में strtok_r() फंक्शन क्या है?


यह फंक्शन strtok() फंक्शन के समान है। एकमात्र मुख्य अंतर _r है, जिसे री-एंट्रेंट फंक्शन कहा जाता है।

एक री-एंट्रेंट फंक्शन एक ऐसा फंक्शन है जिसे इसके निष्पादन के दौरान बाधित किया जा सकता है। इस प्रकार के फंक्शन का उपयोग निष्पादन को फिर से शुरू करने के लिए किया जा सकता है।

इस तथ्य के कारण, री-एंट्रेंट फंक्शन थ्रेड-सेफ होते हैं, अर्थात वे थ्रेड्स द्वारा बिना किसी नुकसान के सुरक्षित रूप से बाधित किए जा सकते हैं।

strtok_r() फंक्शन में एक अतिरिक्त पैरामीटर होता है जिसे कॉन्टेक्स्ट कहा जाता है। ताकि फंक्शन सही जगह पर फिर से शुरू हो सके।

strtok_r() फंक्शन का सिंटैक्स निम्नानुसार है:

#include <string.h> char *strtok_r(char *string, const char *limiter, char **context);

उदाहरण

निम्नलिखित C प्रोग्राम strtok_r() फंक्शन के उपयोग के लिए है:

#include <stdio.h> #include <string.h> int main(){    char input_string[] = "Hello Tutorials Point";    char token_list[20][20];    char* context = NULL;    char* token = strtok_r(input_string, " ", &context);    int num_tokens = 0; // टोकन लिस्ट का इंडेक्स। हम लिस्ट में जोड़ेंगे    while (token != NULL){       strcpy(token_list[num_tokens], token); // टोकन लिस्ट में कॉपी करें       num_tokens++;       token = strtok_r(NULL, " ", &context);    }    // टोकन की लिस्ट प्रिंट करें    printf("Token List:\n");    for (int i=0; i < num_tokens; i++) {       printf("%s\n", token_list[i]);    }    return 0; }

आउटपुट

जब उपरोक्त प्रोग्राम निष्पादित होता है, तो यह निम्नलिखित परिणाम उत्पन्न करता है:

Token List: Hello Tutorials Point

  1. C भाषा में strncpy() फंक्शन क्या है? C भाषा में strncpy() फंक्शन क्या है?

    C लाइब्रेरी फंक्शन char *strncpy(char *dest, const char *src, size_t n) स्रोत स्ट्रिंग (src) से गंतव्य स्ट्रिंग (dest) में n कैरेक्टर्स तक कॉपी करता है। यदि src की लंबाई n से कम है, तो dest का शेष भाग नल बाइट्स से भरा जाता है। घोषणा char stringname [size]; आरंभीकरण सिंगल कैरेक्टर: char string[10]

  1. C भाषा में strcmp() फंक्शन क्या है? C भाषा में strcmp() फंक्शन क्या है?

    C लाइब्रेरी फंक्शन int strcmp(const char *str1, const char *str2) str1 द्वारा इंगित स्ट्रिंग की तुलना str2 द्वारा इंगित स्ट्रिंग से करता है। कैरेक्टर्स का ऐरे स्ट्रिंग कहलाता है। घोषणा ऐरे के लिए घोषणा निम्नलिखित है: char stringname[size]; उदाहरण: char string[50]; 50 कैरेक्टर्स लंबाई की स्ट्रिंग

  1. C भाषा में strcpy() फंक्शन क्या है? C भाषा में strcpy() फंक्शन क्या है?

    C लाइब्रेरी फंक्शन char *strcpy(char *dest, const char *src) src द्वारा इंगित स्ट्रिंग को dest में कॉपी करता है। कैरेक्टर्स का ऐरे स्ट्रिंग कहलाता है। घोषणा ऐरे के लिए घोषणा निम्नलिखित है: char stringname[size]; उदाहरण: char string[50]; 50 कैरेक्टर्स लंबाई की स्ट्रिंग आरंभीकरण सिंगल कैरेक्टर कॉ