C strncmp() Function

Last Updated:

C strncmp()

The strncmp() function compares the characters of two strings up to the specified length.

The characters of the strings may be in lower case or upper case, this function discriminates between them.

Every character holds an ASCII value (an integer ranging from 0 to 127). For example, 'A' holds the ASCII value of 65 and 'a' holds the ASCII value of 97. So, in the comparison between two strings, their ASCII values are compared.

The strncmp() function starts comparison character by character starting from the first character until the characters in both strings are equal, reached the specified length, or a NULL character is encountered.

Example

C Compiler
#include <stdio.h> #include <string.h> int main() { const char str1[] = "abcd"; const char str2[] = "abcdABCD"; int res = strncmp(str1, str2, 4); if(res == 0) printf("str1 is equal to str2"); else if(res > 0) printf("str1 is greater than str2"); else printf("str1 is less than str2"); return 0; }

Syntax

int strncmp(char *str1, char *str2, int n)

Parameter Values

ValueTypeExplanation
str1 Required Specifies the string 1
str2 Required Specifies the string 2
n Required Specifies the length up to which the characters in the strings are compared.

Return Value

This function returns the numeric difference between the ASCII values of non-matching characters.

ValueExplanation
+ive If str1 is greater than str2
0 If str1 is equal to str2
-ive If str1 is less than str2

Share this Page

Meet the Author