Chapter Contents |
Previous |
Next |
strncmp |
Portability: | ISO/ANSI C conforming, UNIX compatible |
SYNOPSIS | |
DESCRIPTION | |
RETURN VALUE | |
CAUTION | |
IMPLEMENTATION | |
EXAMPLE | |
RELATED FUNCTIONS | |
SEE ALSO |
SYNOPSIS |
#include <string.h> int strncmp(const char *str1, const char *str2, size_t maxlen);
DESCRIPTION |
strncmp
compares two character strings (
str1
and
str2
) using the standard EBCDIC collating sequence.
The return value has the same relationship to 0 as
str1
has to
str2
. If two strings
are equal up to the point at which one terminates (that is, contains a null
character), the longer string is considered greater. If
maxlen
characters are inspected from each string and no inequality
is detected, the strings are considered equal.
RETURN VALUE |
The return value from
strncmp
is 0 if the two strings are equal, less than 0 if
str1
compares less than
str2
, and
greater than 0 if
str1
compares greater
than
str2
(within the first
maxlen
characters). No other assumptions should be made about the
value returned by
strncmp
.
CAUTION |
If the
maxlen
value is specified as 0, a result of 0 is returned. If the value is
a negative integer, it is interpreted as a very large
unsigned
value. This may cause a protection or addressing exception,
but this is unlikely because comparison ceases as soon as unequal characters
are found.
IMPLEMENTATION |
strncmp
is implemented as a built-in function, unless you use it with
undef
.
EXAMPLE |
Compare this example to the example for
strcmp
:
#include <string.h> #include <stdio.h> #include <stdlib.h> main() { char command[20]; int n = 0; do{ n++; printf("You have executed this loop %d times.\n", n); puts("Enter quit(may be abbreviated) to end program,"); puts(" or any other command to continue."); gets(command); } while(strncmp(command, "quit", strlen(command)) != 0); exit(0); }
RELATED FUNCTIONS |
SEE ALSO |
Chapter Contents |
Previous |
Next |
Top of Page |
Copyright © 2001 by SAS Institute Inc., Cary, NC, USA. All rights reserved.