Побайтово сравнить два буфера с игнорированием регистра
#include <string.h>int memicmp( const void *s1,const void *s2,size_t length );
libc
Функция memcmp() сравнивает (без учёта регистра) length байт буфера s1, с length байт буфера s2.
Ненулевое значение соответствует результату сравнения первого отличающегося символа в обоих буферах, преобразованного к unsigned char . |
#include <stdio.h>#include <string.h>#include <stdlib.h>int main( void ){char buffer[80];int retval;strcpy( buffer, "World" );retval = memicmp( buffer, "hello", 5 );if ( retval < 0 ){printf( "Less than\n" );} elseif ( retval == 0 ){printf( "Equal\n" );} else {printf( "Greater than\n");}return (EXIT_SUCCESS);}
Код генерирует следующий вывод:
$ ./a.out Less than
ЗОСРВ «Нейтрино»
memccpy(), memchr(), memcmp(), memcpy(), memmove(), memset()
Предыдущий раздел: Описание API системной библиотеки