다음을 통해 공유


_memicmp, _memicmp_l

문자 (대/소문자 구분) 두 가지 버퍼에서를 비교합니다.

int _memicmp(
   const void *buf1,
   const void *buf2,
   size_t count 
);
int _memicmp_l(
   const void *buf1,
   const void *buf2,
   size_t count,
   _locale_t locale
);

매개 변수

  • buf1
    첫 번째 버퍼입니다.

  • buf2
    두 번째 버퍼입니다.

  • count
    문자 수입니다.

  • locale
    사용 하는 로캘.

반환 값

반환 값의 관계는 버퍼를 나타냅니다.

반환 값

첫째 count 바이트 buf1와 buf2의 관계

< 0

buf1보다 작은 buf2.

0

buf1동일한 buf2.

> 0

buf1는 buf2보다 큰 경우

_NLSCMPERROR

오류가 발생했습니다.

설명

_memicmp 함수는 첫 번째 비교 count 두 개의 버퍼의 문자 buf1 및 buf2 바이트 단위로 합니다.대 소문자를 구분 하지 않고 비교 합니다.

두 경우 buf1 또는 buf2 는 null 포인터의 설명에 따라이 함수에 잘못 된 매개 변수 처리기를 호출 매개 변수 유효성 검사.함수 실행 계속할 수 있는지 여부를 반환 _NLSCMPERROR 를 설정 하 고 errno 에 EINVAL.

_memicmp현재 로캘을 로캘 종속 동작을 사용합니다. _memicmp_l대신 전달 된 로캘을 사용 하는 점을 제외 하 고 동일 합니다.자세한 내용은 로캘를 참조하십시오.

요구 사항

루틴

필수 헤더

_memicmp

<memory.h> 또는 <string.h>

_memicmp_l

<memory.h> 또는 <string.h>

더 많은 호환성 정보를 참조 하십시오. 호환성 소개에서 합니다.

예제

// crt_memicmp.c
// This program uses _memicmp to compare
// the first 29 letters of the strings named first and
// second without regard to the case of the letters.

#include <memory.h>
#include <stdio.h>
#include <string.h>

int main( void )
{
   int result;
   char first[] = "Those Who Will Not Learn from History";
   char second[] = "THOSE WHO WILL NOT LEARN FROM their mistakes";
   // Note that the 29th character is right here ^

   printf( "Compare '%.29s' to '%.29s'\n", first, second );
   result = _memicmp( first, second, 29 );
   if( result < 0 )
      printf( "First is less than second.\n" );
   else if( result == 0 )
      printf( "First is equal to second.\n" );
   else if( result > 0 )
      printf( "First is greater than second.\n" );
}
  

해당 .NET Framework 항목

해당 사항 없음. 표준 C 함수를 호출할 수 있습니다 PInvoke. 자세한 내용은 플랫폼 호출 예제.

참고 항목

참조

버퍼 조작

_memccpy

memchr, wmemchr

memcmp, wmemcmp

memcpy, wmemcpy

memset, wmemset

_stricmp, _wcsicmp, _mbsicmp, _stricmp_l, _wcsicmp_l, _mbsicmp_l

_strnicmp, _wcsnicmp, _mbsnicmp, _strnicmp_l, _wcsnicmp_l, _mbsnicmp_l