_memicmp, _memicmp_l

 

Para obtener la documentación más reciente de Visual Studio 2017 RC, consulte Documentación de Visual Studio 2017 RC.

Compara los caracteres de dos búferes (entre mayúsculas y minúsculas).

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  
);  

Parámetros

buf1
Primer búfer.

buf2
Segundo búfer.

count
Número de caracteres.

locale
Configuración regional que se va a usar.

El valor devuelto indica la relación entre los búferes.

Valor devueltoRelación de los primeros bytes del recuento de buf1 y buf2
< 0buf1menos de buf2.
0buf1idéntico a buf2.
> 0buf1mayor que buf2.
_NLSCMPERRORError.

El _memicmp función compara los primeros count caracteres de los búferes de dos buf1 y buf2 byte a byte. La comparación no distingue entre mayúsculas y minúsculas.

Si el valor buf1 o buf2 es un puntero nulo, esta función invoca un controlador de parámetros no válidos, como se describe en validación del parámetro. Si la ejecución puede continuar, la función devuelve _NLSCMPERROR y establece en errno en EINVAL.

_memicmputiliza la configuración regional actual para el comportamiento dependiente de la configuración regional; _memicmp_l es idéntico, salvo que usa la configuración regional que se pasa en su lugar. Para obtener más información, vea Locale.

RutinaEncabezado necesario
_memicmp<memory.h> o <string.h>
_memicmp_l<memory.h> o <string.h>

Para obtener más información sobre compatibilidad, vea Compatibility en la introducción.

// 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" );  
}  

Compare 'Those Who Will Not Learn from' to 'THOSE WHO WILL NOT LEARN FROM'  
First is equal to second.  

No es aplicable. Para llamar a la función estándar de C, use PInvoke. Para obtener más información, vea Ejemplos de invocación de plataforma.

Manipulación del búfer
_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

Mostrar: