_mbsnbcmp, _mbsnbcmp_l
Compara los primeros bytes de n de dos cadenas de multibyte- carácter.
Importante |
---|
Esta API no se puede utilizar en las aplicaciones que se ejecutan en Windows en tiempo de ejecución.Para obtener más información, vea Funciones CRT no compatibles 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
);
Parámetros
string1, string2
Las cadenas a comparar.count
El número de bytes que se va a comparar.locale
La configuración regional a utilizar.
Valor devuelto
El valor devuelto indica la relación entre las subcadenas de string1 y string.
Valor devuelto |
Descripción |
---|---|
< 0 |
la subcadena de string1 es menor que la de string2. |
0 |
la subcadena de string1 es idéntica a la subcadena de string2. |
> 0 |
la subcadena de string1 es mayor que la de string2. |
En un error, _mbsnbcmp devuelve _NLSCMPERROR, que se define en String.h y Mbstring.h.
Comentarios
La función de _mbsnbcmp lexicográficamente compara, como máximo, los primeros bytes de count en string1 y string2 y devuelve un valor que indica la relación entre las subcadenas._mbsnbcmp es una versión con distinción entre mayúsculas y minúsculas de _mbsnbicmp.A diferencia de strcoll, _mbsnbcmp no afecta a la configuración regional._mbsnbcmp reconoce secuencias de multibyte- carácter como multibyte actual página de códigos.
_mbsnbcmp se parece a _mbsncmp, salvo que _mbsncmp compara las cadenas por caracteres no por los bytes.
El valor de salida se vea afectado por el valor de categoría de LC_CTYPE de configuración regional; vea setlocale para obtener más información.La versión de esta función que no tenga el sufijo de _l utiliza la configuración regional actual para este comportamiento configuración regional-dependiente; la versión que tiene el sufijo de _l es idéntica salvo que ella utiliza el parámetro de configuración regional que se pasa en su lugar.Para obtener más información, vea Configuración regional.
Si string1 o string2 es un puntero NULL, esta función invoca el controlador no válido de parámetro, tal y como se describe en Validación de parámetros.Si la ejecución puede continuar, la función devuelve _NLSCMPERROR y errno se establece en EINVAL.
Asignaciones de la rutina de Genérico- texto
Rutina de Tchar.h |
_UNICODE y _MBCS no definidos |
_MBCS definido |
_UNICODE definido |
---|---|---|---|
_tcsncmp |
_mbsnbcmp |
||
_tcsncmp_l |
_mbsnbcml |
Requisitos
Rutina |
Encabezado necesario |
---|---|
_mbsnbcmp |
<mbstring.h> |
_mbsnbcmp_l |
<mbstring.h> |
Para obtener más información de compatibilidad, vea Compatibilidad.
Ejemplo
// 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 );
}
Output
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, utilice PInvoke. Para obtener más información, vea Ejemplos de invocación de plataforma.
Vea también
Referencia
strncmp, wcsncmp, _mbsncmp, _mbsncmp_l
_strnicmp, _wcsnicmp, _mbsnicmp, _strnicmp_l, _wcsnicmp_l, _mbsnicmp_l