memcmp()
Compare the bytes in two buffers
Synopsis:
#include <string.h> int memcmp( const void* s1, const void* s2, size_t length );
Arguments:
- s1, s2
- Pointers to the buffers that you want to compare.
- length
- The number of bytes that you want to compare.
Library:
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
Description:
The memcmp() function compares length bytes of the buffer pointed to by s1 to the buffer pointed to by s2.
Returns:
- < 0
- The object pointed to by s1 is less than the object pointed to by s2.
- 0
- The object pointed to by s1 is equal to the object pointed to by s2.
- > 0
- The object pointed to by s1 is greater than the object pointed to by s2.
Examples:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main( void )
{
char buffer[80];
int retval;
strcpy( buffer, "World" );
retval = memcmp( buffer, "hello", 5 );
if( retval < 0 ) {
printf( "Less than\n" );
} else if( retval == 0 ) {
printf( "Equal to\n");
} else {
printf( "Greater than\n");
}
return EXIT_SUCCESS;
}
produces the output:
Less than
Classification:
| Safety: | |
|---|---|
| Cancellation point | No |
| Interrupt handler | Yes |
| Signal handler | Yes |
| Thread | Yes |