C strlen( )
C strcat( )
C strcmp( )
C strcpy( )
01. C strlen( )
strlen( ) फ़ंक्शन किसी दिए गए स्ट्रिंग की लंबाई की गणना करता है।
strlen( ) फ़ंक्शन एक स्ट्रिंग को एक तर्क के रूप में लेता है और इसकी लंबाई देता है। लौटाया गया मान size_t (अहस्ताक्षरित पूर्णांक प्रकार ) प्रकार का है।
इसे <string.h> हेडर फ़ाइल में परिभाषित किया गया है।
उदाहरण: 01. | सी strlen( ) फ़ंक्शन
#include <stdio.h>
#include <string.h>
int main()
{
char a[20]="Program";
char b[20]={'P','r','o','g','r','a','m','\0'};
// using the %zu format specifier to print size_t
printf("Length of string a = %zu \n", strlen(a));
printf("Length of string b = %zu \n", strlen(b));
return 0;
}
इस प्रोग्राम का आउटपुट हैं ;
Length of string a = 7
Length of string b = 7
⚡ नोट:- ध्यान दें कि लंबाई की गणना करते समय strlen( ) फ़ंक्शन null कैरेक्टर ("\0") की गणना नहीं करता है।
02. C strcat( )
सी प्रोग्रामिंग में, strcat( ) फ़ंक्शन दो स्ट्रिंग्स को जोड़ता है ( Joins )। strcat( ) की फ़ंक्शन परिभाषा है;
char *strcat(char *destination, const char *source)
इसे string.h हेडर फाइल में परिभाषित किया गया है।
strcat( ) आर्ग्यूमेंट्स
जैसा कि आप देख सकते हैं, strcat() फ़ंक्शन दो तर्क या आर्ग्यूमेंट्स लेता है:
गंतव्य ( destination ) - गंतव्य स्ट्रिंग या डेस्टिनेशन स्ट्रिंग
स्रोत ( source ) - स्रोत स्ट्रिंग
strcat( ) फ़ंक्शन गंतव्य स्ट्रिंग और स्रोत स्ट्रिंग को जोड़ता है, और परिणाम गंतव्य स्ट्रिंग में संग्रहीत होता है।
उदाहरण: 02. | सी strcat( ) फ़ंक्शन
#include <stdio.h>
#include <string.h>
int main()
{
char str1[100] = "This is ", str2[] = "creativebloke.in";
// concatenates str1 and str2
// the resultant string is stored in str1.
strcat(str1, str2);
puts(str1);
puts(str2);
return 0;
}
इस प्रोग्राम का आउटपुट हैं ;
This is creativebloke.in
creativebloke.in
⚡ नोट:- जब हम strcat( ) का उपयोग करते हैं, तो गंतव्य स्ट्रिंग का आकार परिणामी स्ट्रिंग को संग्रहीत करने के लिए पर्याप्त बड़ा होना चाहिए। यदि नहीं, तो हमें सेगमेंटेशन फॉल्ट एरर मिलेगा।
03. C strcmp( )
आप strcmp( ) फ़ंक्शन का उपयोग करके दो स्ट्रिंग्स की तुलना करना सीखेंगे। फिर strcmp( ) कैरेक्टर द्वारा दो स्ट्रिंग्स कैरेक्टर की तुलना करता है। यदि स्ट्रिंग्स बराबर हैं, तो फ़ंक्शन 0 देता है।
सी strcmp( ) प्रोटोटाइप
strcmp( ) का फ़ंक्शन प्रोटोटाइप है:
int strcmp (const char* str1, const char* str2);
strcmp( ) पैरामीटर्स
यह फ़ंक्शन दो पैरामीटर लेता है:
str1 - a string
str2 - a string
strcmp( ) से रिटर्न वैल्यू
रिटर्न वैल्यू | रिमार्क्स |
0 | अगर स्ट्रिंग्स बराबर हैं |
>0 | यदि str1 में पहला गैर-मिलान कैरेक्टर str2 की तुलना में अधिक ( ASCII में ) है। |
<0 | यदि str1 में पहला गैर-मिलान वर्ण str2 की तुलना में कम ( ASCII में ) है। |
strcmp( ) फ़ंक्शन को string.h हेडर फ़ाइल में परिभाषित किया गया है।
उदाहरण: 03. | सी strcmp( ) फ़ंक्शन
#include <stdio.h>
#include <string.h>
int main()
{
char str1[] = "abcd", str2[] = "abCd", str3[] = "abcd";
int result;
// comparing strings str1 and str2
result = strcmp(str1, str2);
printf("strcmp(str1, str2) = %d \n", result);
// comparing strings str1 and str3
result = strcmp(str1, str3);
printf("strcmp(str1, str3) = %d \n", result);
return 0;
}
इस प्रोग्राम का आउटपुट हैं ;
strcmp(str1, str2) = 1
strcmp(str1, str3) = 0
प्रोग्राम में,
स्ट्रिंग्स str1 और str2 बराबर नहीं हैं। इसलिए, परिणाम एक गैर-शून्य पूर्णांक है।
स्ट्रिंग्स str1 और str3 बराबर हैं। इसलिए, परिणाम 0 है।
04. C strcpy( )
आप स्ट्रिंग्स को कॉपी करने के लिए ( उदाहरण की मदद से ) सी प्रोग्रामिंग में strcpy( ) फंक्शन का उपयोग करना सीखेंगे।
strcpy( ) का फ़ंक्शन प्रोटोटाइप है;
char* strcpy(char* destination, const char* source);
strcpy( ) फ़ंक्शन स्रोत या सोर्स ( शून्य वर्ण सहित ) द्वारा इंगित स्ट्रिंग को गंतव्य ( Destination ) तक कॉपी करता है।
strcpy( ) फ़ंक्शन कॉपी की गई स्ट्रिंग भी लौटाता है या रिटर्न करता हैं।
strcpy( ) फ़ंक्शन को string.h हेडर फ़ाइल में परिभाषित किया गया है।
उदाहरण: 04. | सी strcpy( ) फ़ंक्शन
#include <stdio.h>
#include <string.h>
int main()
{
char str1[20] = "I Love To C programming";
char str2[20];
// copying str1 to str2
strcpy(str2, str1);
puts(str2); // C programming
return 0;
}
इस प्रोग्राम का आउटपुट हैं ;
I Love To C programming
नोट: जब आप strcpy( ) का उपयोग करते हैं, तो गंतव्य स्ट्रिंग का आकार कॉपी किए गए स्ट्रिंग को संग्रहीत करने के लिए पर्याप्त बड़ा होना चाहिए। अन्यथा, इसका परिणाम अपरिभाषित व्यवहार ( undefined behavior ) हो सकता है।
Comments