int memcmp(const void *s1, const void *s2,
The memcmp() function shall compare the first n bytes
(each interpreted as unsigned char) of the object
pointed to by s1 to the first n bytes of the object pointed
to by s2.
The sign of a non-zero return value shall be determined by the sign
of the difference between the values of the first pair of
bytes (both interpreted as type unsigned char) that differ in
the objects being compared.
The memcmp() function shall return an integer greater than,
equal to, or less than 0, if the object pointed to by
s1 is greater than, equal to, or less than the object pointed
to by s2, respectively.
No errors are defined.
The following sections are informative.
The Base Definitions volume of IEEE Std 1003.1-2001, <string.h>
Portions of this text are reprinted and reproduced in electronic form
from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology
-- Portable Operating System Interface (POSIX), The Open Group Base
Specifications Issue 6, Copyright (C) 2001-2003 by the Institute of
Electrical and Electronics Engineers, Inc and The Open Group. In the
event of any discrepancy between this version and the original IEEE and
The Open Group Standard, the original IEEE and The Open Group Standard
is the referee document. The original Standard can be obtained online at