इस tutorial में हम C programming में string के साथ strcmp() function और strcmpi() function का use करना example के साथ सीखेंगे.
कभी-कभी C programs में किसी तरह के काम के लिए हमें 2 strings को आपस में compare करना होता है और ये पता लगाना होता है की की क्या दोनों strings बराबर (same) हैं या नहीं.
जब हम strings comparison करते हैं तब दोनों strings के सभी characters को एक-एक करके compare किया जाता है और जब दोनों strings के हर एक characters same होते हैं तभी string को equal माना जाता है.
C programming में strings comparison के लिए बहुत सारे functions है इस tutorial में हम strcmp() function और strcmpi() function का use करेंगे.
strcmp() और strcmpi() function की declaration “string.h” header file में होती है इसलिए इन functions को use करने के लिए string.h header file को अपने program के top में include करना जरूरी होता है.
strcmp() function in C Programming
जब हम strcmp() function की help से 2 strings को compare करते हैं अगर दोनों strings character by character same होती हैं तो ये function 0 value return करता हैं.
अगर दोनों strings same नहीं होंगी तब ये function कोई भी negative या positive value return करता है.
इसके अलावा सबसे जरूरी बात strcmp() case sensitive function हैं. जिसका मतलब ये होता है की इस function के लिए छोटा a और बड़ा A दो अलग-अलग characters हैं.
strcmp() function syntax:
int strcmp(string1, string2);
strcmp() function का standard syntax ऊपर दिए गए syntax से थोड़ा अलग होता है. मैंने यहाँ original syntax को simplify form में लिखा है जिससे की आप strcmp() function को आसानी से समझ सकें.
Argument: जब आप strcmp() function को call करते हैं तब आप उन दो strings को arguments के तौर पर pass करते हैं जिन्हें आप compare करना चाहते हो.
Return Value: strcmp() function arguments के तौर पर pass की गयी दोनों strings same होंगी तो ये function 0 value return करेगा.
strcmp() function example program:
#include <stdio.h>
#include <string.h>
int main()
{
char str1[20],str2[20];
printf("Enter Your First String : ");
gets(str1);
printf("Enter Your Second String : ");
gets(str2);
if((strcmp(str1,str2))==0)
{
printf("str1 and str2 are equal");
}
else
{
printf("str1 and str2 are not equal");
}
return 0;
}
Output 1:
Enter Your First String : Karan Enter Your Second String : Kiran str1 and str2 are not equal
Output 2:
Enter Your First String : Karan
Enter Your Second String : Karan
str1 and str2 are equal
Output 3:
Enter Your First String : Karan Enter Your Second String : KARAN str1 and str2 are not equal
Explanation:
जैसा की output 3 में देख सकते हो की strcmp() function का case sensitive होने की वजह से strings “Karan” और “KARAN” same नहीं हैं.
अगर आप चाहते हो की दोनों strings को compare करते वक्त case sensitivity check नहीं की जाए यानी छोटा a और बड़ा A दो अलग-अलग characters नहीं माने जाए तो इसके लिए हम strcmpi() function का use करते हैं.
strcmpi() function in C Programming
strcmpi() function का use भी strcmp() function की तरह 2 string को compare करना है. बस फर्क ये की strcmpi() case insensitive function है.
जिसका मतलब ये होता है की इस function के लिए छोटा a और बड़ा A दो अलग-अलग characters नहीं हैं.
strcmpi() function syntax:
int strcmpi(string1, string2);
strcmpi() function का standard syntax ऊपर दिए गए syntax से थोड़ा अलग होता है. मैंने यहाँ original syntax को simplify form में लिखा है जिससे की आप strcmpi() function को आसानी से समझ सकें.
strcmpi() function example program:
#include <stdio.h>
#include <string.h>
int main()
{
char str1[20],str2[20];
printf("Enter Your First String : ");
gets(str1);
printf("Enter Your Second String : ");
gets(str2);
if((strcmpi(str1,str2))==0)
{
printf("str1 and str2 are equal");
}
else
{
printf("str1 and str2 are not equal");
}
return 0;
}
Output 1:
Enter Your First String : Karan Enter Your Second String : Kiran str1 and str2 are not equal
Output 2:
Enter Your First String : Karan Enter Your Second String : Karan str1 and str2 are equal
Output 3:
Enter Your First String : Karan Enter Your Second String : KARAN str1 and str2 are equal