Unicode e MBCS
La libreria Microsoft Foundation Classes (MFC), la libreria di runtime C per Visual C++ e l'ambiente di sviluppo Visual C++ sono abilitati per facilitare la programmazione internazionale. Offrono le caratteristiche seguenti:
Supporto per lo standard Unicode in Windows. Unicode è lo standard corrente e se ne consiglia l'utilizzo ovunque sia possibile.
Unicode è una codifica di caratteri a 16 bit, fornendo codifiche sufficienti per tutti i linguaggi. Tutti i caratteri ASCII sono inclusi in Unicode come caratteri estesi.
Supporto per una forma di set di caratteri multibyte (MBCS) denominato set di caratteri a byte doppio (DBCS) in tutte le piattaforme.
I caratteri DBCS sono composti da 1 o 2 byte. Alcuni intervalli di byte vengono messi da parte per l'uso come byte lead. Un byte iniziale specifica che e il byte finale seguente comprendono un singolo carattere a 2 byte. È necessario tenere traccia dei byte dei lead. In un determinato set di caratteri multibyte, i byte di apertura e di chiusura sono inclusi in un intervallo specifico. Quando questi intervalli si sovrappongono, potrebbe essere necessario valutare il contesto per determinare se un byte specificato funziona come byte lead o come byte finale.
Supporto per strumenti che semplificano la programmazione MBCS delle applicazioni scritte per i mercati internazionali.
Quando viene eseguito in una versione abilitata per MBCS del sistema operativo Windows, il sistema di sviluppo Di Visual C++, incluso l'editor del codice sorgente integrato, il debugger e gli strumenti da riga di comando, è completamente abilitato per MBCS. Per altre informazioni, vedere Supporto MBCS in Visual C++.
Nota
In questa documentazione, MBCS viene usato per descrivere tutto il supporto non Unicode per i caratteri multibyte. In Visual C++, MBCS indica sempre DBCS. I set di caratteri più ampi di 2 byte non sono supportati.
Per definizione, il set di caratteri ASCII è un subset di tutti i set di caratteri multibyte. In molti set di caratteri multibyte, ogni carattere incluso nell'intervallo da 0x00 a 0x7F è identico al carattere che ha lo stesso valore nel set di caratteri ASCII. Ad esempio, nelle stringhe di caratteri ASCII e MBCS il carattere NULL a 1 byte ('\0') ha valore 0x00 e indica il carattere Null di terminazione.