Aracılığıyla paylaş


_mbsnbcmp, _mbsnbcmp_l

İlk karşılaştırır n bayt iki çok baytlı karakter dizeleri.

Önemli notÖnemli

Bu API yürütün uygulamalarda kullanılamaz Windows Çalışma Zamanı.Daha fazla bilgi için bkz: /zw ile desteklenmeyen crt işlevlerinin.

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

Parametreler

  • string1, string2
    Karşılaştırmak için dizeleri.

  • count
    Karşılaştırmak için bayt sayısı.

  • locale
    Kullanılacak yerel ayarı.

Dönüş Değeri

Dönüş değeri bu nedenle arasındaki ilişkiyi gösterir string1 ve string.

Dönüş değeri

Tanımlama

< 0

string1alt dize olduğundan az string2 alt dize.

0

string1alt dize aynı string2 alt dize.

> 0

string1alt dize büyük string2 alt dize.

Bir hata _mbsnbcmp döndüren _NLSCMPERROR, String.h ve Mbstring.h tanımlanan.

Notlar

_mbsnbcmp İşlevi lexicographically karşılaştırır, en çok, ilk count bayt cinsinden string1 ve string2 ve bu nedenle arasındaki ilişkiyi gösteren bir değeri döndürür._mbsnbcmpbüyük küçük harf duyarlı bir sürümüdür _mbsnbicmp.Aksine strcoll, _mbsnbcmp yerel ayarlarından etkilenmez._mbsnbcmpGeçerli çok baytlı göre çok baytlı karakter dizilerini tanır kod sayfasını.

_mbsnbcmpbenzer _mbsncmp, dışında _mbsncmp karakterler yerine bayt dizesini karşılaştırır.

Çıkış değeri etkilenir LC_CTYPE ; bölgesel ayar kategorisi bkz: setlocale daha fazla bilgi için.Yoksa bu işlev sürümü _l soneki kullanır geçerli yerel ayarı için bu yerel ayara bağımlı davranışı; sürüm olan _l sonekidir özdeş dışında bunun yerine geçirilen yerel parametresini kullanır.Daha fazla bilgi için bkz. Yerel ayar.

Ya da, string1 veya string2 bir null işaretçi parametresi geçersiz işleyici açıklandığı gibi bu işlevi çağırır Parametre doğrulama.İşlev verir yürütülmesine devam etmek için izin verilip verilmediğini, _NLSCMPERROR ve errno ayarlamak EINVAL.

Genel metin eşlemeleri yordamına girildi

Tchar.h yordamına girildi

_UNICODE ve _mbcs tanımlanmamış

Tanımlanan _mbcs

Tanımlanan _UNICODE

_tcsncmp

strncmp

_mbsnbcmp

wcsncmp

_tcsncmp_l

strncmp

_mbsnbcml

wcsncmp

Gereksinimler

Yordamı

Gerekli başlık

_mbsnbcmp

<mbstring.h>

_mbsnbcmp_l

<mbstring.h>

Daha fazla uyumluluk bilgileri için bkz: Uyumluluk.

Örnek

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

Çıktı

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

.NET Framework Eşdeğeri

Yoktur. Standart c işlevi çağırmak için kullanın PInvoke. Daha fazla bilgi için bkz. Platform Çağırma örnekleri.

Ayrıca bkz.

Başvuru

Dize işlemleri (crt)

_mbsnbcat, _mbsnbcat_l

_mbsnbicmp, _mbsnbicmp_l

strncmp, wcsncmp, _mbsncmp, _mbsncmp_l

_strnicmp, _wcsnicmp, _mbsnicmp, _strnicmp_l, _wcsnicmp_l, _mbsnicmp_l

Yerel ayar

Yorumunu çok baytlı karakter dizileri