_setmbcp
Définit une nouvelle page de codes multioctets.
int _setmbcp(
int codepage
);
Paramètres
- codepage
Nouveaux paramètres de la page de codes pour les routines multioctets indépendantes des paramètres locaux.
Valeur de retour
Retourne 0 si la page de codes est définie correctement. Si une valeur de page de codes est fournie pour codepage, retourne – 1 et les paramètres de la page de codes ne sont pas modifiés. Définit errno à EINVAL en cas d'échec d'allocation de mémoire.
Notes
La fonction _setmbcp spécifie une nouvelle page de codes multioctets. Par défaut, le système d'exécution définit automatiquement la page de codes multioctets à la page de codes ANSI du système DÉFAUT. Les paramètres de la page de codes multioctets affectent toutes les routines multioctets qui ne sont pas dépendantes des paramètres locaux. Toutefois, il est possible de demander à _setmbcp d'utiliser la page de codes définie pour les paramètres locaux actuels (consultez la liste suivante de constantes manifestes et des résultats associés de comportement). Pour obtenir la liste des routines multioctets qui dépendent de la page de codes paramètres locaux plutôt que la page de codes multioctets, consultez Interprétation des séquences de caractères multioctets.
La page de codes multioctets affecte également le traitement de caractères multi-octets par les routines suivantes de la bibliothèque d'exécutables :
En outre, toutes les routines de la bibliothèque d'exécutables qui recoivent le caractère multioctet argv dou les arguments du programme envp (comme les familles _exec et _spawn ) traitent ces chaînes en fonction de la page de codes multioctets. Par conséquent, ces routines sont également affectées par un appel à _setmbcp qui modifie la page de codes multioctets.
La propriété codepage peut être définie à n'importe laquelle des valeurs suivantes.
_MB_CP_ANSI Utilisez la Page de codes ANSI extraite du système d'exploitation au démarrage du programme.
_MB_CP_LOCALE Utilisez la page de codes des paramètres régionaux obtenue à partir d'un appel précédent à setlocale.
_MB_CP_OEM Utilisez la page de code OEM extraite du système d'exploitation au démarrage du programme.
_MB_CP_SBCS Utilisez la page de codes codés sur un octet. Lorsque la page de codes est définie à _MB_CP_SBCS, une routine par exemple _ismbblead retourne toujours la valeur false.
Toute autre page de codes valide, que la valeur soit ANSI,OEM ou bien encore celle d'une autre page de code supportée par le système d'exploitation (sauf UTF-7 et UTF-8, qui ne sont pas supportés).
Configuration requise
Routine |
En-tête requis |
---|---|
_setmbcp |
<mbctype.h> |
Pour plus d'informations sur la compatibilité, consultez Compatibilité dans l'introduction.