Freigeben über


_setmbcp

Legt eine neue Mehrbyte-Codepage fest.

int _setmbcp(
   int codepage 
);

Parameter

  • codepage
    Neue Codepage-Einstellung für gebietsschemaunabhängige Mehrbyteroutinen.

Rückgabewert

Gibt 0 zurück, wenn die Codepage erfolgreich festgelegt wird. Wenn ein ungültiger Codepagewert für codepage angegeben wurde, kehrt zurück - 1 und die Codepage-Einstellung ist unverändert. Legt errno auf EINVAL fest, wenn ein Speicherbelegungsfehler auftritt.

Hinweise

Die _setmbcp-Funktion gibt eine neue Mehrbyte-Codepage an. Standardmäßig legt das Laufzeitsystem automatisch die Mehrbyte-Codepage auf die SystemStandard ANSI-Codepage fest. Die Mehrbyte-Codepage-Einstellung beeinflusst alle Mehrbyteroutinen, die nicht vom Gebietsschema) sind. Es ist jedoch möglich, _setmbcp anzuweisen, um die Codepage zu verwenden, die für das aktuelle Gebietsschema definiert wird (siehe folgende Liste der Manifestkonstanten und zugeordneten Verhaltensergebnissen). Eine Liste der Mehrbyteroutinen, die von der Codepage eines Gebietsschemas anstatt die Mehrbyte-Codepage abhängig sind, finden Sie unter Interpretation von Mehrbytezeichen-Sequenzen.

Die Mehrbyte-Codepage beeinflusst auch das Mehrbytezeichen, das durch die folgenden Laufzeitbibliotheksroutinen verarbeitet:

_exec-Funktionen

_mktemp

_stat

_fullpath

_spawn-Funktionen

_tempnam

_makepath

_splitpath

tmpnam

Außerdem nutzen alle Laufzeitbibliotheksroutinen, die Mehrbytezeichen argv oder envp Programmargumente erhalten, während Parameter (wie _exec und _spawn ) alle Familien diese Zeichenfolgen anhand der Mehrbyte-Codepage verarbeiten. Deshalb werden diese Routinen auch durch einen Aufruf von _setmbcp auswirkt, der die Mehrbyte-Codepage ändert.

Das codepage-Argument kann auf eine der folgenden Werte festgelegt werden:

  • _MB_CP_ANSI   Verwenden Sie die ANSI-Codepage, die vom Betriebssystem beim Programmstart abgerufen wird.

  • _MB_CP_LOCALE   Verwenden Sie die aktuelle Codepage des Gebietsschemas, die von einem vorherigen Aufruf erfolgt setlocale.

  • _MB_CP_OEM   Verwenden Sie OEM-Codepage, die vom Betriebssystem beim Programmstart abgerufen wird.

  • _MB_CP_SBCS   Verwenden Sie Einzelbytecodepage. Wenn die Codepage auf _MB_CP_SBCS festgelegt wird, gibt eine Routine wie _ismbblead immer false zurück.

  • Ein beliebiger anderer gültiger Codepagewert, unabhängig davon, ob der Wert ANSI, OEM- oder eine andere für lassen-System-unterstützte Codepage ist (außer UTF-7 und UTF-8, die nicht unterstützt werden).

Anforderungen

Routine

Erforderlicher Header

_setmbcp

<mbctype.h>

Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität in der Einführung.

Siehe auch

Referenz

_getmbcp

setlocale, _wsetlocale