Partilhar via


Unicode e MBCS

A biblioteca Microsoft Foundation Classes (MFC), a biblioteca de tempo de execução C para Visual C++ e o ambiente de desenvolvimento Visual C++ estão habilitados para ajudar sua programação internacional. Elas fornecem:

  • Suporte para o padrão Unicode no Windows. Unicode é o padrão atual e deve ser usado sempre que possível.

    Unicode é uma codificação de caracteres de 16 bits, fornecendo codificações suficientes para todos os idiomas. Todos os caracteres ASCII são incluídos em Unicode como caracteres ampliados.

  • Suporte para um tipo de conjunto de caracteres multibyte (MBCS) denominado conjunto de caracteres de byte duplo (DBCS) em todas as plataformas.

    Os caracteres DBCS são compostos por 1 ou 2 bytes. Alguns intervalos de bytes são reservados para uso como bytes iniciais. Um byte principal especifica que ele e o byte subsequente compreendem um único caractere de 2 bytes. Você deve manter o controle de quais bytes são bytes iniciais. Num determinado conjunto de caracteres multibyte, os bytes de início estão dentro de um determinado intervalo, tal como os bytes de seguimento. Quando esses intervalos se sobrepõem, pode ser necessário avaliar o contexto para determinar se um determinado byte está funcionando como um byte principal ou um byte de trilha.

  • Suporte para ferramentas que simplificam a programação MBCS de aplicações escritas para mercados internacionais.

    Quando executado em uma versão habilitada para MBCS do sistema operacional Windows, o sistema de desenvolvimento do Visual C++ — incluindo o editor de código-fonte integrado, o depurador e as ferramentas de linha de comando — é completamente habilitado para MBCS. Para obter mais informações, consulte Suporte a MBCS no Visual C++.

Observação

Nesta documentação, o MBCS é usado para descrever todo o suporte não-Unicode para caracteres multibyte. No Visual C++, MBCS sempre significa DBCS. Não há suporte para conjuntos de caracteres maiores que 2 bytes.

Por definição, o conjunto de caracteres ASCII é um subconjunto de todos os conjuntos de caracteres multibyte. Em muitos conjuntos de caracteres multibyte, cada caractere no intervalo 0x00 - 0x7F é idêntico ao caractere que tem o mesmo valor no conjunto de caracteres ASCII. Por exemplo, em cadeias de caracteres ASCII e MBCS, o caractere NULL de 1 byte ('\0') tem valor 0x00 e indica o caractere nulo de terminação.

Ver também

Texto e cadeias de caracteres
Habilitação Internacional