Export (0) Print
Expand All
Expand Minimize
This topic has not yet been rated - Rate this topic

_setmbcp

Sets a new multibyte code page.

int _setmbcp(
   int codepage 
);

Parameter

codepage
New code page setting for locale-independent multibyte routines.

Return Value

Returns 0 if the code page is set successfully. If an invalid code page value is supplied for codepage, returns –1 and the code page setting is unchanged.

Remarks

The _setmbcp function specifies a new multibyte code page. By default, the run-time system automatically sets the multibyte code page to the system-default ANSI code page. The multibyte code page setting affects all multibyte routines that are not locale dependent. However, it is possible to instruct _setmbcp to use the code page defined for the current locale (see the following list of manifest constants and associated behavior results). For a list of the multibyte routines that are dependent on the locale code page rather than the multibyte code page, see Interpretation of Multibyte-Character Sequences.

The multibyte code page also affects multibyte-character processing by the following run-time library routines:

In addition, all run-time library routines that receive multibyte-character argv or envp program arguments as parameters (such as the _exec and _spawn families) process these strings according to the multibyte code page. Hence, these routines are also affected by a call to _setmbcp that changes the multibyte code page.

The codepage argument can be set to any of the following values:

  • _MB_CP_ANSI   Use ANSI code page obtained from operating system at program startup.
  • _MB_CP_LOCALE   Use the current locale's code page obtained from a previous call to setlocale.
  • _MB_CP_OEM   Use OEM code page obtained from operating system at program startup.
  • _MB_CP_SBCS   Use single-byte code page. When the code page is set to _MB_CP_SBCS, a routine such as _ismbblead always returns false. .
  • Any other valid code page value, regardless of whether the value is an ANSI, OEM, or other operating-system-supported code page.

Requirements

Routine Required header Compatibility
_setmbcp <mbctype.h> Win 98, Win Me, Win NT, Win 2000, Win XP

For additional compatibility information, see Compatibility in the Introduction.

Libraries

All versions of the C run-time libraries.

See Also

_getmbcp | setlocale | Run-Time Routines and .NET Framework Equivalents

Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft. All rights reserved.