Compartilhar via


Erros do compilador C2100 a C2199

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 fazer com que muitos erros subsequentes desapareçam.

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 digite no sumário nesta 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ê chegou a esta página ao usar F1 e acha que a mensagem de erro ou aviso precisa de explicações adicionais, informe-nos. Você pode usar os botões de comentários nesta página para registrar um problema de documentação no GitHub. 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. No Visual Studio, vá para a barra de menus e escolha Ajuda > Enviar Comentários > Relatar um Problema ou envie uma sugestão usando Ajuda > Enviar Comentários > Enviar uma Sugestão. 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 Perguntas e respostas do Microsoft Learn. 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 C2100 indireção inválida
Erro do compilador C2101 '&' em constante
Erro do compilador C2102 '&' requer l-value
Erro do compilador C2103 '&' em variável de registro
Erro do compilador C2104 '&' no campo de bits ignorado
Erro do compilador C2105 'operator' precisa de l-value
Erro do compilador C2106 'operator': operando à esquerda deve ser l-value
Erro do compilador C2107 índice inválido, indireção não permitida
Erro do compilador C2108 o subscrito não é de tipo integral
Erro do compilador C2109 o subscrito requer um tipo de matriz ou ponteiro
Erro do compilador C2110 '+': não é possível adicionar dois ponteiros
Erro do compilador C2111 '+': soma de ponteiros requer operando integral
Erro do compilador C2112 '-': subtração de ponteiros requer operando integral ou ponteiro
Erro do compilador C2113 '-': ponteiro só pode ser subtraído de outro ponteiro
Erro do compilador C2114 'operator': ponteiro à esquerda; precisa de um valor integral à direita
Erro do compilador C2115 'operator': tipos incompatíveis
Erro do compilador C2116 listas de parâmetros de função diferentes
Erro do compilador C2117 'identifier' : estouro de limites da matriz
Erro do compilador C2118 subscrito negativo
Erro do compilador C2119 'identifier': não é possível deduzir o tipo para 'tipo' de um inicializador vazio
Erro do compilador C2120 'void' inválido com todos os tipos
Erro do compilador C2121 '#': caractere inválido: possivelmente o resultado de uma expansão de macro
Erro do compilador C2122 'identifier': o parâmetro de protótipo na lista de nomes é ilegal
Erro do compilador C2123 'identifier': modelos de alias não podem ser explicitamente ou parcialmente especializados
Erro do compilador C2124 divisão ou mod por zero
Erro do compilador C2125 'constexpr' é incompatível com 'token'
Erro do compilador C2126 'identifier' não pode ser declarado com o especificador 'constexpr'
Erro do compilador C2127 'identifier': inicialização ilegal da entidade 'constexpr' com uma expressão não constante
Erro do compilador C2128 'function': alloc_text/same_seg aplicável apenas a funções com vínculo a C
Erro do compilador C2129 função estática 'identifier' declarada, mas não definida
Erro do compilador C2130 #line esperava uma cadeia de caracteres contendo o nome de arquivo, encontrou 'token'
Erro do compilador C2131 a expressão não foi avaliada como uma constante
Erro do compilador C2132 erro de sintaxe: identificador inesperado
Erro do compilador C2133 'identificador': tamanho desconhecido
Erro do compilador C2134 'function' : a chamada não resulta em uma expressão de constante
Erro do compilador C2135 'operator': operação de campo de bit inválida
Erro do compilador C2136 contrato de API de criação não permitido
Erro do compilador C2137 constante de caractere vazio
Erro do compilador C2138 ilegal para definir uma enumeração sem membros
Erro do compilador C2139 'class': uma classe indefinida não é permitida como um argumento para a característica de tipo intrínseco do compilador 'trait'
Erro do compilador C2140 'type': um tipo que é dependente de um parâmetro de tipo genérico não é permitido como um argumento para a característica de tipo intrínseca do compilador 'trait'
Erro do compilador C2141 estouro na dimensão da matriz
Erro do compilador C2142 declarações da função diferem, parâmetros de variáveis especificados em apenas uma delas
Erro do compilador C2143 erro de sintaxe: 'token1' ausente antes de 'token2'
Erro do compilador C2144 erro de sintaxe: 'type' deve ser precedido por 'token2'
Erro do compilador C2145 erro de sintaxe: 'token' ausente antes do identificador
Erro do compilador C2146 erro de sintaxe: 'token' ausente antes do identificador 'identifier'
Erro do compilador C2147 erro de sintaxe: 'token' é uma nova palavra-chave
Erro do compilador C2148 o tamanho total da matriz não deve exceder 0xvalue bytes
Erro do compilador C2149 'identifier': o campo de bits nomeado não pode ter largura zero
Erro do compilador C2150 'identifier': o campo de bits deve ser do tipo 'int', 'signed int' ou 'unsigned int'
Erro do compilador C2151 mais de um atributo de linguagem
Erro do compilador C2152 'identifier' : ponteiros para funções com atributos diferentes
Erro do compilador C2153 os literais de inteiros devem ter pelo menos um dígito
Erro do compilador C2154 'type': somente tipo de enumeração é permitido como argumento para a característica do tipo intrínseco do compilador 'trait'
Erro do compilador C2155 '?' : tipo de ponteiro, expressão aritmética esperada ou operando esquerdo inválidos
Erro do compilador C2156 pragma deve estar fora da função
Erro do compilador C2157 'identifier': deve ser declarado antes do uso na lista de pragma
Erro do compilador C2158 'type': a diretiva #pragma make_public tem suporte atualmente apenas para tipos nativos não modelo
Erro do compilador C2159 mais de uma classe de armazenamento especificada
Erro do compilador C2160 '##' não pode ocorrer no início de uma definição de macro
Erro do compilador C2161 '##' não pode ocorrer no fim de uma definição de macro
Erro do compilador C2162 parâmetro formal de macro esperado
Erro do compilador C2163 'função': não disponível como uma função intrínseca
Erro do compilador C2164 'function': função intrínseca não declarada
Erro do compilador C2165 'modifier': não é possível modificar ponteiros para dados
Erro do compilador C2166 l-value especifica objeto const
Erro do compilador C2167 'function': muitos parâmetros reais para função intrínseca
Erro do compilador C2168 'function': poucos parâmetros reais para função intrínseca
Erro do compilador C2169 'function': função intrínseca, não pode ser definida
Erro do compilador C2170 'identifier': não declarado como uma função, não pode ser intrínseco
Erro do compilador C2171 'operator': inválido em operandos de tipo 'type'
Erro do compilador C2172 'function': o parâmetro real não é um ponteiro: parâmetro number
Erro do compilador C2173 'function': o parâmetro real não é um ponteiro: parâmetro number, lista de parâmetros number2
Erro do compilador C2174 'function': o parâmetro real tem o tipo 'void': parâmetro number, lista de parâmetros number
Erro do compilador C2175 'locale' : localidade inválida
Erro do compilador C2176 uma instrução return não pode aparecer no manipulador de uma função de bloco try associada a um construtor
Erro do compilador C2177 constante grande demais
Erro do compilador C2178 O 'identifier' não pode ser declarado com o especificador 'specifier'
Erro do compilador C2179 'type': um argumento de atributo não pode usar parâmetros de tipo
Erro do compilador C2180 a expressão de controle é do tipo 'type'
Erro do compilador C2181 else inválido sem if correspondente
Erro do compilador C2182 'identifier' : uso ilegal do tipo 'void'
Erro do compilador C2183 erro de sintaxe: unidade de tradução está vazia
Erro do compilador C2184 'type': tipo inválido para expressão __except
Erro do compilador C2185 'identifier' : alocação com base ilegal
Erro do compilador C2186 'operator': operando inválido do tipo 'void'
Erro do compilador C2187 erro de sintaxe: o 'token' não era esperado aqui
Erro do compilador C2188 'number': muito grande para caractere largo
Erro do compilador C2189 o atributo 'alignas' não pode ser aplicado a um campo de bits, um parâmetro de função, uma declaração de exceção ou uma variável declarada com a classe de armazenamento 'register'
Erro do compilador C2190 primeira lista de parâmetros mais longa que a segunda
Erro do compilador C2191 segunda lista de parâmetros mais longa que a primeira
Erro do compilador C2192 declaração do parâmetro 'number' diferente
Erro do compilador C2193 'identifier' : já em um segmento
Erro do compilador C2194 'identifier': é um segmento de texto
Erro do compilador C2195 'identifier': é um segmento de dados
Erro do compilador C2196 valor de caso 'value' já usado
Erro do compilador C2197 'function': número excedente de argumentos para chamada
Erro do compilador C2198 'function': número insuficiente de argumentos para chamada
Erro do compilador C2199 erro de sintaxe: encontrado 'identifier (' no escopo global (foi uma declaração pretendida?)

Confira também

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