strncmp()
strncmp() फ़ंक्शन का उपयोग लेफ्ट स्ट्रिंग की तुलना राइट स्ट्रिंग से एक निर्दिष्ट संख्या तक करने के लिए किया जाता है। यह strcmp() की तरह ही काम करता है। जब लेफ्ट स्ट्रिंग के मिलान वाले कैरेक्टर का ASCII मान राइट स्ट्रिंग के कैरेक्टर से अधिक होता है, तो यह शून्य से अधिक मान लौटाता है। जब लेफ्ट स्ट्रिंग के मिलान वाले कैरेक्टर का ASCII मान राइट स्ट्रिंग के कैरेक्टर से कम होता है, तो यह शून्य से कम मान लौटाता है।
C में सिंटैक्स
int strncmp ( const char *leftString, const char *rightString, size_t number );
पैरामीटर्स:
- leftString - पहली स्ट्रिंग जिसकी तुलना राइट स्ट्रिंग से की जानी है।
- rightString - दूसरी स्ट्रिंग जिसका उपयोग पहली स्ट्रिंग की तुलना के लिए किया जाता है।
- number - तुलना करने के लिए अधिकतम कैरेक्टर्स की संख्या।
उदाहरण
#include <stdio.h>
#include <string.h>
int main() {
char str1[] = "blank";
char str2[] = "Hello World!";
int result = strncmp(str1, str2, 1);
if (result == 0)
printf("स्ट्रिंग्स बराबर हैं");
else
printf("स्ट्रिंग्स असमान हैं");
printf("\nstrncmp() द्वारा लौटाया गया मान: %d", result);
return 0;
}
आउटपुट
स्ट्रिंग्स असमान हैं strncmp() द्वारा लौटाया गया मान: 26
strcmp()
strcmp() फ़ंक्शन एक बिल्ट-इन लाइब्रेरी फ़ंक्शन है और "string.h" हेडर फ़ाइल में घोषित है। इस फ़ंक्शन का उपयोग स्ट्रिंग आर्गुमेंट्स की तुलना के लिए किया जाता है। यह स्ट्रिंग्स की शब्दकोश क्रम में तुलना करता है, जिसका अर्थ है कि यह दोनों स्ट्रिंग्स की तुलना कैरेक्टर दर कैरेक्टर करता है। यह स्ट्रिंग्स के पहले कैरेक्टर की तुलना से शुरू करता है जब तक कि दोनों स्ट्रिंग्स के कैरेक्टर बराबर न हों या NULL कैरेक्टर न मिल जाए।
यदि दोनों स्ट्रिंग्स का पहला कैरेक्टर बराबर है, तो यह दूसरे कैरेक्टर की जांच करता है और इसी तरह आगे बढ़ता है। यह प्रक्रिया तब तक जारी रहती है जब तक NULL कैरेक्टर न मिल जाए या दोनों कैरेक्टर असमान न हों। यदि दोनों स्ट्रिंग्स समान हैं यानी दोनों स्ट्रिंग्स में कैरेक्टर समान हैं, तो यह शून्य लौटाता है।
जब लेफ्ट स्ट्रिंग के मिलान वाले कैरेक्टर का ASCII मान राइट स्ट्रिंग के कैरेक्टर से अधिक होता है, तो यह शून्य से अधिक मान लौटाता है। जब लेफ्ट स्ट्रिंग के मिलान वाले कैरेक्टर का ASCII मान राइट स्ट्रिंग के कैरेक्टर से कम होता है, तो यह शून्य से कम मान लौटाता है।
C में सिंटैक्स
int strcmp(const char *leftString, const char *rightString);
पैरामीटर्स:
- leftString - पहली स्ट्रिंग जिसकी तुलना राइट स्ट्रिंग से की जानी है।
- rightString - दूसरी स्ट्रिंग जिसका उपयोग पहली स्ट्रिंग की तुलना के लिए किया जाता है।
उदाहरण
#include <stdio.h>
#include <string.h>
int main() {
char str1[] = "hello World!";
char str2[] = "Hello World!";
int result = strcmp(str1, str2);
if (result == 0)
printf("स्ट्रिंग्स बराबर हैं");
else
printf("स्ट्रिंग्स असमान हैं");
printf("\nstrcmp() द्वारा लौटाया गया मान: %d", result);
return 0;
}
आउटपुट
स्ट्रिंग्स असमान हैं strcmp() द्वारा लौटाया गया मान: 32