Erros do compilador C2001 a C2099

Os artigos nesta seção da documentação explicam um subconjunto das mensagens de erro geradas pelo compilador.

Importante

Os compiladores e ferramentas de build do Visual Studio podem relatar muitos tipos de erros e avisos. Depois que um erro ou aviso for encontrado, as ferramentas de build poderão fazer suposições sobre a intenção do código e tentar continuar, para que mais problemas possam ser relatados ao mesmo tempo. Se as ferramentas fizerem a suposição errada, erros ou avisos posteriores poderão não se aplicar ao seu projeto. Quando você corrige problemas em seu projeto, sempre comece com o primeiro erro ou aviso relatado e recompile com frequência. Uma correção pode resolver vários erros subsequentes.

Para obter ajuda em uma mensagem de diagnóstico específica no Visual Studio, selecione-a na janela Saída e pressione a tecla F1. O Visual Studio abre a página de documentação desse erro, se houver uma. Você também pode usar a ferramenta de pesquisa na parte superior da página para encontrar artigos sobre erros ou avisos específicos. Ou navegue pela lista de erros e avisos por ferramenta e tipo no sumário desta página.

Observação

Nem todos os erros ou avisos do Visual Studio estão documentados. Em muitos casos, a mensagem de diagnóstico fornece todas as informações que estão disponíveis. Se você tiver desembarcado nesta página e achar que a mensagem de erro ou aviso precisa de explicação adicional, informe-nos usando os botões de comentários nesta página. Se você achar que o erro ou o aviso está errado ou encontrou outro problema com o conjunto de ferramentas, relate um problema de produto no site da Developer Community. Você também pode enviar comentários e inserir bugs no IDE. Em Visual Studio, vá para a barra de menus e escolha Help > Enviar Comentários > Relatar um Problema ou envie uma sugestão usando Help > Enviar Comentários > Sugerir um recurso. Foram criados alguns tópicos de erro do compilador que não são emitidos pelo compilador e agora redirecionam para esta página.

Você pode encontrar assistência adicional para erros e avisos nos fóruns Microsoft Q&A C++. Alternativamente, pesquise o número do erro ou aviso no site da Developer Community do Visual Studio C++. Você também pode pesquisar o Stack Overflow para encontrar soluções.

Para obter links para ajuda adicional e recursos da comunidade, confira Ajuda e Comunidade do Visual C++.

Mensagens de erro

Erro Mensagem
Erro do compilador C2001 nova linha em literal de string
Erro do compilador C2002 esperado um literal de cadeia de caracteres comum
Erro do compilador C2003 esperava-se um 'id' definido
Erro do compilador C2004 esperava-se 'defined(id)'
Erro do compilador C2005 #line esperava um número de linha, encontrou 'token'
Erro do compilador C2006 'directive': esperado "FILENAME" ou <FILENAME>
Erro do compilador C2007 sintaxe do #define
Erro do compilador C2008 'character': inesperado na definição de macro
Erro do compilador C2009 não é possível reutilizar o nome do parâmetro de macro 'identifier'
Erro do compilador C2010 'character' : inesperado na lista de parâmetros formais de macro
Erro do compilador C2011 'identificador' : redefinição de tipo 'type'
Erro do compilador C2012 nome ausente após '<'
Erro do compilador C2013 era esperado um 'token'
Erro do compilador C2014 O comando de pré-processador deve começar como o primeiro caractere que não seja espaço em branco
Erro do compilador C2015 muitos caracteres na constante
Erro do compilador C2016 C requer que um struct ou união tenha pelo menos um membro
Erro do compilador C2017 sequência de escape desconhecida
Erro do compilador C2018 O caractere 'U+value' não é permitido aqui
Erro do compilador C2019 esperada diretiva de pré-processador, encontrado 'character'
Erro do compilador C2020 'member': redefinição de membro 'class'
Erro do compilador C2021 valor de expoente esperado, não 'caractere'
Erro do compilador C2022 'number': muito grande para caractere
Erro do compilador C2023 'identifier': alinhamento (value-1) diferente da declaração anterior (value-2)
Erro do compilador C2024 o atributo 'alignas' se aplica somente a variáveis, membros de dados e tipos de marcas
Erro do compilador C2025 arquivo da interface do módulo binário corrompido ou inválido: 'filename'
Erro do compilador C2026 cadeia de caracteres muito grande, caracteres finais truncados
Erro do compilador C2027 uso do tipo indefinido 'tipo'
Erro do compilador C2028 membro de struct/union deve estar dentro de uma struct/union
Erro do compilador C2029 (Obsoleto) à esquerda de 'token' especifica uma classe/struct/interface indefinida 'identifier'
Erro do compilador C2030 um destruidor com acessibilidade 'privada protegida' não pode ser membro de uma classe declarada 'selada'
Erro do compilador C2031 um destruidor virtual com nível de acesso 'accessibility' não é permitido para este tipo
Erro do compilador C2032 'identifier': a função não pode ser membro da struct/union 'type'
Erro do compilador C2033 'identificador': o campo de bit não pode ter indireção
Erro do compilador C2034 'identifier': tipo de campo de bits muito pequeno para o número de bits
Erro do compilador C2035 um destruidor não virtual com nível de acesso 'accessibility' não é permitido para esse tipo
Erro do compilador C2036 'identificador': tamanho desconhecido
Erro do compilador C2037 à esquerda de 'operator' indica struct/união indefinida 'type'
Erro do compilador C2038 o namespace std não pode estar embutido
Erro do compilador C2039 'identifier1' : não é um membro de 'identifier2'
Erro do compilador C2040 'operator': 'identifier1' difere de 'identifier2' nos níveis de indireção
Erro do compilador C2041 dígito inválido 'character' para a base 'number'
Erro do compilador C2042 as palavras-chave signed/unsigned são mutuamente exclusivas entre si
Erro do compilador C2043 instrução break fora de loop ou instrução switch
Erro do compilador C2044 continuação inválida
Erro do compilador C2045 'identifier': rótulo redefinido
Erro do compilador C2046 caso ilegal
Erro do compilador C2047 padrão não permitido
Erro do compilador C2048 mais de um padrão
Erro do compilador C2049 'namespace-name': um namespace não embutido não pode ser reaberto como embutido
Erro do compilador C2050 a expressão de switch não é integral
Erro do compilador C2051 expressão de caso não constante
Erro do compilador C2052 'type': tipo inválido para expressão de caso
Erro do compilador C2053 'identifier': incompatibilidade de cadeia de caracteres larga
Erro do compilador C2054 esperado '(' após 'identificador'
Erro do compilador C2055 era esperada uma lista de parâmetros formais, não uma lista de tipos
Erro do compilador C2056 Expressão inválida
Erro do compilador C2057 expressão constante esperada
Erro do compilador C2058 a expressão constante não é integral
Erro do compilador C2059 erro de sintaxe: 'token'
Erro do compilador C2060 erro de sintaxe: fim do arquivo encontrado
Erro do compilador C2061 erro de sintaxe: identificador 'identifier'
Erro do compilador C2062 tipo 'type' inesperado
Erro do compilador C2063 'identifier' : não uma função
Erro do compilador C2064 O termo não é avaliado para uma função que usa argumentos number
Erro do compilador C2065 'identifier': identificador não declarado
Erro do compilador C2066 a conversão para um tipo de função não é permitida
Erro do compilador C2067 a conversão para o tipo vetor é ilegal
Erro do compilador C2068 uso ilegal de função sobrecarregada. Falta a lista de argumentos?
Erro do compilador C2069 conversão de termo 'void' para não 'void'
Erro do compilador C2070 'type': operando de sizeof inválido
Erro do compilador C2071 'identifier': classe de armazenamento inválida
Erro do compilador C2072 'identifier': inicialização de uma função
Erro do compilador C2073 (Obsoleto) 'identifier': elementos de uma matriz parcialmente inicializada precisam ter um construtor padrão
Erro do compilador C2074 'identifier': a inicialização de 'type' requer uma lista de inicializadores entre chaves
Erro do compilador C2075 'identificador': a inicialização requer uma lista de inicializadores entre chaves
Erro do compilador C2076 não é possível usar uma lista de inicialização entre chaves em uma expressão new cujo tipo contenha 'type'
Erro do compilador C2077 inicializador de campo não escalar 'identifier'
Erro do compilador C2078 número excessivo de inicializadores
Erro do compilador C2079 'identifier' usa 'type' do tipo struct/classe/união indefinido
Erro do compilador C2080 'identifier': o tipo de 'type' só pode ser deduzido por meio de uma expressão de inicializador único
Erro do compilador C2081 'identifier': nome inválido na lista de parâmetros formais
Erro do compilador C2082 redefinição do parâmetro formal 'identifier'
Erro do compilador C2083 comparação entre struct e union inválida
Erro do compilador C2084 função 'identifier' já tem um corpo
Erro do compilador C2085 'identifier': ausente da lista de parâmetros formais
Erro do compilador C2086 'identifier': redefinição
Erro do compilador C2087 'identifier': índice ausente
Erro do compilador C2088 O operador interno 'operator' não pode ser aplicado a um operando do tipo 'tipo de classe'
Erro do compilador C2089 'identifier': 'type' grande demais
Erro do compilador C2090 a função retorna uma matriz
Erro do compilador C2091 a função retorna uma função
Erro do compilador C2092 O tipo de elemento de matriz 'identificador' não pode ser função ou tipo de classe abstrato
Erro do compilador C2093 'identifier1': não pode ser inicializada usando endereço de variável automática 'identifier2'
Erro do compilador C2094 o rótulo 'identifier' estava indefinido
Erro do compilador C2095 'function': o parâmetro real tem tipo 'void': parâmetro number
Erro do compilador C2096 'identifier': Não e possível inicializar um membro de dados com um inicializador entre parênteses
Erro do compilador C2097 inicialização inválida
Erro do compilador C2098 token inesperado após o membro de dados 'identifier'
Erro do compilador C2099 inicializador não é uma constante

Confira também

Compilador C/C++ e erros e avisos das ferramentas de build
Erros do compilador C2001 - C3999, C7000 - C7999