_mbsnbicmp
, _mbsnbicmp_l
Porovná n bajty dvou vícebajtových řetězců a ignoruje malá a velká písmena.
Důležité
Toto rozhraní API nelze použít v aplikacích, které se spouští v prostředí Windows Runtime. Další informace najdete v tématu Funkce CRT, které nejsou v aplikacích Univerzální platforma Windows podporované.
Syntaxe
int _mbsnbicmp(
const unsigned char *string1,
const unsigned char *string2,
size_t count
);
Parametry
string1
, string2
Řetězce ukončené hodnotou null, které se mají porovnat.
count
Počet bajtů, které se mají porovnat
Vrácená hodnota
Vrácená hodnota označuje vztah mezi podřetězí.
Vrácená hodnota | Popis |
---|---|
< 0 | string1 podřetětěžce menší než string2 podřetětěr. |
0 | string1 podřetětěce shodný s string2 podřetětcem. |
> 0 | string1 podřetětěr větší než string2 podřetětěr. |
Při chybě _mbsnbicmp
vrátí hodnotu _NLSCMPERROR
, která je definována v String.h a Mbstring.h.
Poznámky
Funkce _mbsnbicmp
provádí pořadové porovnání nejvýše prvních count
bajtů string1
a string2
. Porovnání provádí převodem každého znaku na malá písmena; _mbsnbcmp
je verze rozlišující malá a velká písmena _mbsnbicmp
. Porovnání skončí, pokud je v některém řetězci dosaženo ukončujícího znaku null před count
porovnáním znaků. Pokud jsou řetězce při dosažení ukončujícího znaku null v každém řetězci count
před porovnáním znaků stejné, je kratší řetězec menší.
_mbsnbicmp
je podobná , _mbsnbcmp
s tím rozdílem, že porovnává řetězce až po count
bajty místo podle znaků.
Dva řetězce obsahující znaky umístěné mezi 'Z' a 'a' v tabulce ASCII ('[', '\', ']', '^', '_' a ''') se porovnávají odlišně v závislosti na jejich případu. Například dva řetězce "ABCDE" a "ABCD^" porovnávají jeden způsob, pokud je porovnání malými písmeny ("abcde" > "abcd^") a druhým způsobem ("ABCDE" < "ABCD^"), pokud je to velká písmena.
_mbsnbicmp
rozpozná vícebajtové sekvence znaků podle aktuálně používané znakové stránky s vícebajty. Aktuální nastavení národního prostředí nemá vliv.
Pokud je nebo string2
string1
je ukazatel null, _mbsnbicmp
vyvolá neplatnou obslužnou rutinu parametru, jak je popsáno v ověření parametru. Pokud je spuštění povoleno pokračovat, funkce vrátí _NLSCMPERROR
a nastaví errno
na EINVAL
.
Ve výchozím nastavení je globální stav této funkce vymezen na aplikaci. Chcete-li toto chování změnit, přečtěte si téma Globální stav v CRT.
Mapování rutin obecného textu
Rutina Tchar.h | _UNICODE a _MBCS není definován |
_MBCS definovaný |
_UNICODE definovaný |
---|---|---|---|
_tcsnicmp |
_strnicmp |
_mbsnbicmp |
_wcsnicmp |
_tcsnicmp_l |
_strnicmp_l |
_mbsnbicmp_l |
_wcsnicmp_l |
Požadavky
Rutina | Požadovaný hlavičkový soubor |
---|---|
_mbsnbicmp |
<mbstring.h> |
Další informace o kompatibilitě najdete v tématu Kompatibilita.
Příklad
Podívejte se na příklad pro _mbsnbcmp
, _mbsnbcmp_l
.
Viz také
Manipulace s řetězci
_mbsnbcat
, _mbsnbcat_l
_mbsnbcmp
, _mbsnbcmp_l
_stricmp
, _wcsicmp
, _mbsicmp
, _stricmp_l
, , _wcsicmp_l
_mbsicmp_l