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.
Microsoft-specifikus
A különböző nemzetközi piacok kódfejlesztésének egyszerűsítése érdekében a Microsoft futásidejű kódtára számos adattípushoz, rutinhoz és egyéb objektumhoz biztosít Microsoft-specifikus "generic-text" leképezéseket. Ezek a leképezések a következőben vannak definiálva TCHAR.H: . Ezekkel a névleképezésekkel olyan általános kódot írhat, amely a háromféle karakterkészlethez fordítható le: ASCII (SBCS), MBCS vagy Unicode, egy utasítással #define definiált jegyzékkonstanstól függően. Az általános szövegleképezések olyan Microsoft-bővítmények, amelyek nem anSI-kompatibilisek.
Preprocesszor-irányelvek általános szövegleképezésekhez
#define |
Lefordított verzió | példa |
|---|---|---|
_UNICODE |
Unicode (széles karakter) |
_tcsrev a _wcsrev-re vonatkozik |
_MBCS |
Többbájtos karakter |
_tcsrev a _mbsrev-re vonatkozik |
Nincs (az alapértelmezett: mindkettő _UNICODE és _MBCS nincs definiálva) |
SBCS (ASCII) |
_tcsrev a strrev-re vonatkozik |
A programban definiált általános szövegfüggvény _tcsrevpéldául arra képez le leképezést, hogy _mbsrev_MBCS a program definiálta-e, vagy _wcsrev hogy _UNICODE definiálva van-e.TCHAR.H Ellenkező esetben a _tcsrev a strrev-re van képezve.
A szintén definiált TCHAR.Háltalános szöveges adattípus _TCHARa típustchar, ha _MBCS van definiálva, a típustwchar_t, ha _UNICODE van definiálva, és beírjachar, ha egyik állandó sincs definiálva. A programozási kényelem érdekében más adattípus-leképezések is rendelkezésre TCHAR.H állnak, de _TCHAR ez a típus a legkedvezőbb.
Generic-Text adattípus-leképezések
| Általános szöveg adattípus neve | SBCS (_UNICODEnincs _MBCS definiálva) |
_MBCS Meghatározott |
_UNICODE Meghatározott |
|---|---|---|---|
_TCHAR |
char |
char |
wchar_t |
_TINT |
int |
int |
wint_t |
_TSCHAR |
signed char |
signed char |
wchar_t |
_TUCHAR |
unsigned char |
unsigned char |
wchar_t |
_TXCHAR |
char |
unsigned char |
wchar_t |
_T vagy _TEXT |
Nincs hatás (az előfeldolgozó eltávolítja) | Nincs hatás (az előfeldolgozó eltávolítja) |
L (a következő karaktert vagy sztringet Unicode-megfelelővé alakítja) |
A rutinok, változók és egyéb objektumok általános-szöveges leképezéseinek teljes listáját lásd : Generic-text mappings.
Az alábbi kódrészletek a _TCHAR és _tcsrev használatát, valamint a MBCS-, Unicode- és SBCS-modellekre való leképezését szemléltetik.
_TCHAR *RetVal, *szString;
RetVal = _tcsrev(szString);
Ha _MBCS definiálva van, az előfeldolgozó leképezi az előző töredéket a következő kódra:
char *RetVal, *szString;
RetVal = _mbsrev(szString);
Ha _UNICODE definiálva van, az előfeldolgozó leképezi ugyanazt a töredéket a következő kódra:
wchar_t *RetVal, *szString;
RetVal = _wcsrev(szString);
Ha mindkettő _MBCS , és _UNICODE nincs definiálva, az előprocesszor a töredéket egy bájtos ASCII-kódra képezi le az alábbiak szerint:
char *RetVal, *szString;
RetVal = strrev(szString);
Ezek a makrók lehetővé teszik egyetlen forráskódfájl írását, karbantartását és fordítását mindhárom karakterkészletre jellemző rutinok használatával.
END Microsoft-specifikus kifejezés
Lásd még
Általános szövegleképezések
Adattípus-leképezések
Állandó és globális változóleképezések
Rutinleképezések
Általános szöveges mintaprogram