Suporte a Unicode no compilador e vinculador
Este tópico descreve o suporte a Unicode nas ferramentas de compilação do Visual C++.
Nomes de arquivo
sistema autônomo nomes de arquivo especificado na linha de comando e no compilador diretivas (por exemplo, # include) podem agora conter caracteres Unicode.Nas versões anteriores do Visual C++, somente os nomes de arquivo ANSI foram suporte.Caracteres que não são ASCII devem ser evitados em nomes de arquivo de saída, para que possa executar um executável em versões localizadas do Windows 98 e Windows Me.Arquivos de código-fonte
Agora há suporte para caractere Unicode em identificadores, macros, seqüência de caractere e caractere literais e em comentários.Agora também há suporte para nomes de caractere universais.Unicode pode ser inserido em um arquivo de código-fonte no seguintes codificações:
UTF-16 little endian com ou sem marca de ordem de byte (BOM)
UTF-16 big endian com ou sem BOM
UTF-8 com BOM
Saída
Durante a compilação, compilador produz Diagnóstico para o console em UTF-16.Os caracteres que podem ser exibidos no console do dependem das propriedades de janela de console.Redirecionado para um arquivo de saída do compilador está na página de código ANSI corrente console do.Arquivos de resposta de vinculador e .def arquivos
Arquivos de resposta e arquivos DEF podem ser qualquer um dos UTF-16 com um byte de ordem Mark ou ANSI.Anteriormente havia suporte para apenas ANSI.despejos .asm e .cod
despejos .asm e .cod são ANSI, por padrão para compatibilidade com MASM.Use /FAu para saída UTF-8.Observe que, se você especificar /FAs, a fonte intermingled apenas serão impressos diretamente e pode parecer ilegível, por exemplo, se o código-fonte é UTF-8 e você não especificou /FAsu.
Você pode habilitar a nomes de arquivo Unicode no ambiente de desenvolvimento (consulte Como: Abrir o Projeto Propriedade Páginas), selecionando a ferramenta apropriada e selecionando o Habilitar arquivos de resposta Unicodepropriedade , que é ativada por padrão.Um motivo, que você pode alterar esse padrão é se você modificar o seu ambiente de desenvolvimento para usar um compilador que não tenha Unicode suporte.