Sunday, 28 April 2013

strcmp()

This function compare two strings to find out whether they are same or different.

The two string are compared character by character until there is a mismatch or end of one of the strings is reached, whichever occurs first.

If the two strings are identical, strcmp() return zero.
If they are not, it returns the numeric difference between the ASCII values of the first non-matching pair of characters.

In summarize:
(Compare ASCII values of string's characters)
if both string equal = 0
if first string > second string = +ve
if first string < second string = -ve

Note: strcmp() is case sensitive.

syntax:

strcmp("first_sting","second_string");


example:

strcmp("AA","BB");
[Here, first string's first character(i.e. A) is ASCII value is 65 and in second string's first character(i.e. B) ASCII value is 66 so first iteration result is 0, now second iteration start now compare A and B (i.e. 65 and 66] so A<B (i.e. 65<66) so result is negative.]

illustrate strcmp() C program:

/*c program for illustrate strcmp() function*/
#include<stdio.h>
int main()
{
 int r;
 char str1[40],str2[40];
 printf("Enter first string : ");
 gets(str1);
 printf("Enter second string : ");
 gets(str2);
 r = strcmp(str1,str2);
 printf("Result : %d",r);
 getch();
 return 0;
}

The output of above program would be:


Output for strcmp() when both string are equal C program
Figure: Screen shot for strcmp() when both string are equal C program


Output for strcmp() when first string < second string  C program
Figure: Screen shot for strcmp() when first string < second string
 
C program
output for strcmp() when first string > second string  C program
Figure: Screen shot for strcmp() when first string > second string
 C program


Related program:
  1. List of standard library function
  2. strlen()
  3. strcpy()

No comments:

Post a Comment