We recommend using Visual Studio 2017
This documentation is archived and is not being maintained.

_ismbblead, _ismbblead_l

Tests a character to determine whether it is a lead byte of a multibyte character.

Important note Important

This API cannot be used in applications that execute in the Windows Runtime. For more information, see CRT functions not supported with /ZW.

int _ismbblead(
   unsigned int c 
int _ismbblead_l(
   unsigned int c,
   _locale_t locale


Integer to be tested.


Locale to use.

Returns a nonzero value if the integer c is the first byte of a multibyte character.

Multibyte characters consist of a lead byte followed by a trailing byte. Lead bytes are distinguished by being in a particular range for a given character set. For example, in code page 932 only, lead bytes range from 0x81 – 0x9F and 0xE0 – 0xFC.

_ismbblead uses the current locale for locale-dependent behavior. _ismbblead_l is identical except that it uses the locale passed in instead. For more information, see Locale.

Generic-Text Routine Mappings

Tchar.h routine

_UNICODE and _MBCS not defined

_MBCS defined

_UNICODE defined


Always returns false


Always returns false


Required header

Optional header


<mbctype.h> or <mbstring.h>

<ctype.h>,* <limits.h>, <stdlib.h>


<mbctype.h> or <mbstring.h>

<ctype.h>,* <limits.h>, <stdlib.h>

* For manifest constants for the test conditions.

For more compatibility information, see Compatibility.

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.