Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A sztringhez és a karakterkonstansokhoz használt végrehajtási karakterkészletet adja meg. Ez az irányelv nem szükséges a u8 előtaggal jelölt literálokhoz.
Szintaxis
#pragma execution_character_set("target")
Paraméterek
target
Megadja a célvégrehajtási karakterkészletet. Jelenleg az egyetlen támogatott célvégrehajtási csoport a "utf-8".
Megjegyzések
Ez a fordító irányelv elavult a Visual Studio 2015 Update 2 és újabb verzióiban. Javasoljuk, hogy a /execution-charset:utf-8 vagy /utf-8 fordítóbeállításokat használja a u8 előtaggal együtt a bővített karaktereket tartalmazó keskeny karakter- és sztringkonstansokon. A u8 előtaggal kapcsolatos további információkért lásd sztring- és karakterkonstansokat. A fordító beállításairól további információt a /execution-charset (Végrehajtási karakterkészlet beállítása) és /utf-8 (Forrás- és végrehajtási karakterkészletek beállítása UTF-8-ra).
A #pragma execution_character_set("utf-8") irányelv arra utasítja a fordítót, hogy a végrehajtható fájlban UTF-8-ként kódolja a forráskódban a keskeny karakter- és keskeny sztringkonstansokat. Ez a kimeneti kódolás független a forrásfájl kódolásától.
Alapértelmezés szerint, amikor a fordító keskeny karaktereket és keskeny sztringeket kódol, az aktuális kódlapot használja végrehajtási karakterkészletként. Az aktuális kódlap tartományán kívüli Unicode- vagy DBCS-karakterek a kimenet alapértelmezett helyettesítő karakterévé alakulnak át. A Unicode- és DBCS-karakterek csonkolva vannak az alacsony sorrendű bájtjukra, ami szinte soha nem az, amit tervez. A forrásfájlban lévő literálok UTF-8 kódolásának megadásához használjon egy u8 előtagot. A fordító változatlanul továbbítja ezeket az UTF-8 kódolt sztringeket a kimenetnek. A u8 által előtagolt keskeny karakterkonstansoknak el kell férniük egy bájtban, vagy a kimenet csonkolja őket.
Alapértelmezés szerint a Visual Studio az aktuális kódlapot használja forrás karakterkészletként a forráskód kimenethez való értelmezéséhez. Amikor beolvas egy fájlt, a Visual Studio az aktuális kódlap alapján értelmezi azt, kivéve, ha a fájl kódlapkészlettel rendelkezik. Vagy ha a fájl elején nem észlelhető bájtsorrendi jel (BOM) vagy UTF-16 karakter. A Windows egyes verzióiban nem állíthatja be az UTF-8-at az aktuális kódlapként. Ha az automatikus észlelés UTF-8 kódolású forrásfájlokat talál a verziókban BOM nélkül, a Visual Studio feltételezi, hogy az aktuális kódlapon vannak kódolva. A forrásfájl azon karakterei, amelyek nem tartoznak a megadott vagy automatikusan észlelt kódlap tartományán, fordítói figyelmeztetéseket és hibákat okozhatnak.
Lásd még:
Pragma irányelvei, valamint a __pragma és _Pragma kulcsszavak
/execution-charset (Végrehajtási karakterkészlet beállítása)
/utf-8 (Forrás- és végrehajtási karakterkészletek beállítása UTF-8-ra)