_mbsnbcmp, _mbsnbcmp_l
New Complex.h Functions
New Math.h functions
New fenv.h functions
and
div
eof
not
or
xor
New stdlib.h functions
TOC
Collapse the table of content
Expand the table of content
Este artículo se tradujo de forma manual. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

_mbsnbcmp, _mbsnbcmp_l

 

Compara los primeros n bytes de dos cadenas de caracteres multibyte.

System_CAPS_importantImportante

Esta API no se puede usar en aplicaciones que se ejecutan en Windows en tiempo de ejecución.Para más información, vea Funciones de CRT no admitidas con /ZW.

int _mbsnbcmp(
   const unsigned char *string1,
   const unsigned char *string2,
   size_t count 
);
int _mbsnbcmp_l(
   const unsigned char *string1,
   const unsigned char *string2,
   size_t count,
   _locale_t locale
);

string1, string2

Las cadenas que se comparan.

count

El número de bytes que se compara.

locale

Configuración regional que se va a usar.

El valor devuelto indica la relación ordinal entre las subcadenas de string1 y string.

Valor devuelto

Descripción

< 0

La subcadena string1 es menor que la subcadena string2.

0

La subcadena string1 es idéntica a la subcadena string2.

> 0

La subcadena string1 es mayor que la subcadena string2.

Si se produce un error de validación de parámetros, _mbsnbcmp y _mbsnbcmp_l devuelven _NLSCMPERROR, que se define en <string.h> y <mbstring.h>.

Las funciones _mbsnbcmp comparan a lo sumo los primeros count bytes en string1 y string2, y devuelven un valor que indica la relación entre las subcadenas. _mbsnbcmp es una versión de _mbsnbicmp que distingue entre mayúsculas y minúsculas.A diferencia de _mbsnbcoll, _mbsnbcmp no se ve afectado por el orden de intercalación de la configuración regional. _mbsnbcmp reconoce secuencias de caracteres multibyte según la actual página de códigos multibyte.

_mbsnbcmp es similar a _mbsncmp, salvo que _mbsncmp compara las cadenas por caracteres y no por bytes.

El valor de salida se ve afectado por la categoría LC_CTYPE de la configuración regional, que especifica los bytes iniciales y finales bytes de los caracteres multibyte.Para obtener más información, vea setlocale.La función _mbsnbcmp usa la configuración regional actual para este comportamiento dependiente de dicha configuración.La función _mbsnbcmp_l es idéntica, salvo que usa el parámetro locale.Para obtener más información, vea Configuración regional.

Si string1 o string2 son un puntero nulo, estas funciones invocan el controlador de parámetros no válidos, como se describe en Validación de parámetros.Si la ejecución puede continuar, las funciones devuelven _NLSCMPERROR y errno se establece en EINVAL.

Asignaciones de rutina de texto genérico

Rutina Tchar.h

_UNICODE y _MBCS no definidos

_MBCS definido

_UNICODE definido

_tcsncmp

strncmp

_mbsnbcmp

wcsncmp

_tcsncmp_l

strncmp

_mbsnbcml

wcsncmp

Requisitos

Rutina

Encabezado necesario

_mbsnbcmp

<mbstring.h>

_mbsnbcmp_l

<mbstring.h>

Para obtener más información sobre compatibilidad, vea Compatibilidad.

// crt_mbsnbcmp.c
#include <mbstring.h>
#include <stdio.h>

char string1[] = "The quick brown dog jumps over the lazy fox";
char string2[] = "The QUICK brown fox jumps over the lazy dog";

int main( void )
{
   char tmp[20];
   int result;
   printf( "Compare strings:\n          %s\n", string1 );
   printf( "          %s\n\n", string2 );
   printf( "Function: _mbsnbcmp (first 10 characters only)\n" );
   result = _mbsncmp( string1, string2 , 10 );
   if( result > 0 )
      _mbscpy_s( tmp, sizeof(tmp), "greater than" );
   else if( result < 0 )
      _mbscpy_s( tmp, sizeof(tmp), "less than" );
   else
      _mbscpy_s( tmp, sizeof(tmp), "equal to" );
   printf( "Result:   String 1 is %s string 2\n\n", tmp );
   printf( "Function: _mbsnicmp _mbsnicmp (first 10 characters only)\n" );
   result = _mbsnicmp( string1, string2, 10 );
   if( result > 0 )
      _mbscpy_s( tmp, sizeof(tmp), "greater than" );
   else if( result < 0 )
      _mbscpy_s( tmp, sizeof(tmp), "less than" );
   else
      _mbscpy_s( tmp, sizeof(tmp), "equal to" );
   printf( "Result:   String 1 is %s string 2\n\n", tmp );
}

Compare strings:
          The quick brown dog jumps over the lazy fox
          The QUICK brown fox jumps over the lazy dog

Function: _mbsnbcmp (first 10 characters only)
Result:   String 1 is greater than string 2

Function: _mbsnicmp _mbsnicmp (first 10 characters only)
Result:   String 1 is equal to string 2

Equivalente en .NET Framework

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

Mostrar:
© 2016 Microsoft