Erreurs du compilateurs de C2001 à C2099
Les articles de cette section de la documentation décrivent un sous-ensemble de messages d’erreur générés par le compilateur.
Important
Les compilateurs et outils de génération Visual Studio peuvent signaler de nombreux types d’erreurs et d’avertissements. Une fois qu’une erreur ou un avertissement a été détecté, les outils de génération peuvent faire des hypothèses sur l’intention du code, et tenter de poursuivre leur tâche, pour signaler un plus grand nombre de problèmes en même temps. Si les outils suivent une hypothèse incorrecte, les erreurs ou avertissements ultérieurs peuvent ne pas s'appliquer à votre projet. Lors de la résolution de problèmes dans votre projet, démarrez toujours par la première erreur ou le premier avertissement signalé et effectuez régulièrement une régénération. Un seul correctif peut permettre d’éliminer de nombreuses erreurs à venir.
Pour obtenir de l’aide sur un message de diagnostic particulier dans Visual Studio, sélectionnez-le dans la fenêtre Sortie, puis appuyez sur la touche F1. Visual Studio ouvre la page de documentation relative à cette erreur, le cas échéant. Vous pouvez également utiliser l’outil de recherche en haut de la page pour rechercher des articles sur des erreurs ou des avertissements spécifiques. Vous pouvez également parcourir la liste des erreurs et des avertissements par outil et par type dans la table des matières de cette page.
Remarque
Les erreurs et les avertissements Visual Studio ne sont pas documentés en totalité. Dans de nombreux cas, le message de diagnostic fournit toutes les informations disponibles. Si vous êtes arrivé sur cette page quand vous avez utilisé F1, et si vous pensez que le message d’erreur ou d’avertissement nécessite une explication supplémentaire, faites-le nous savoir. Vous pouvez utiliser les boutons de commentaires de cette page pour signaler un problème de documentation sur GitHub. Si vous pensez que l’erreur ou l’avertissement est incorrect, ou si vous avez trouvé un autre problème relatif à l’ensemble d’outils, signalez un problème de produit sur le site Developer Community. Vous pouvez également envoyer des commentaires et entrer des bogues dans l’IDE. Dans Visual Studio, accédez à la barre de menus, puis choisissez Aide > Envoyer des commentaires > Signaler un problème, ou envoyez une suggestion via Aide > Envoyer des commentaires > Envoyer une suggestion. Certaines rubriques d’erreur du compilateur qui ne sont pas émises par le compilateur ont été créées et redirigent maintenant vers cette page à la place.
Vous trouverez peut-être une aide supplémentaire sur les erreurs et les avertissements dans les forums de Q&A Microsoft Learn. Vous pouvez également rechercher le numéro d’erreur ou d’avertissement sur le site Developer Community de Visual Studio C++. Vous pouvez également effectuer des recherches sur Stack Overflow pour trouver des solutions.
Pour obtenir des liens vers d’autres ressources d’aide et de communauté, consultez Aide et communauté Visual C++.
Messages d’erreur
Erreur | Message |
---|---|
Erreur du compilateur C2001 | saut de ligne dans la constante |
Erreur du compilateur C2002 | constante à caractères larges non valide |
Erreur du compilateur C2003 | attendu 'defined id' |
Erreur du compilateur C2004 | attendu 'defined(id)' |
Erreur du compilateur C2005 | #line attendait un numéro de ligne, a trouvé 'token' |
Erreur du compilateur C2006 | 'directive' : nom de fichier attendu, 'token' rencontré |
Erreur du compilateur C2007 | syntaxe #define |
Erreur du compilateur C2008 | 'character' : inattendu dans la définition de macro |
Erreur du compilateur C2009 | réutilisation de 'identifier' formel de macro |
Erreur du compilateur C2010 | 'character' : inattendu dans la liste de paramètres formels de macro |
Erreur du compilateur C2011 | 'identifier' : redéfinition du type 'type' |
Erreur du compilateur C2012 | nom manquant après '<' |
Erreur du compilateur C2013 | '>' manquant |
Erreur du compilateur C2014 | une commande de préprocesseur doit commencer comme premier espace autre que blanc |
Erreur du compilateur C2015 | trop de caractères dans la constante |
Erreur du compilateur C2016 | C nécessite un struct ou une union avec au moins un membre |
Erreur du compilateur C2017 | séquence d'échappement non valide |
Erreur du compilateur C2018 | caractère inconnu '0xvalue' |
Erreur du compilateur C2019 | directive de préprocesseur attendue, 'character' rencontré |
Erreur du compilateur C2020 | 'member' : redéfinition du membre de 'class' |
Erreur du compilateur C2021 | valeur d’exposant attendue, pas 'character' |
Erreur du compilateur C2022 | 'number' : trop grand pour un caractère |
Erreur du compilateur C2023 | 'identifier' : Alignement (value-1) différent de la déclaration antérieure (value-2) |
Erreur du compilateur C2024 | l'attribut 'alignas' s'applique à des variables, des membres de données et des types de balise uniquement |
Erreur du compilateur C2025 | fichier d'interface de module binaire non valide ou endommagé : 'filename' |
Erreur du compilateur C2026 | chaîne trop grande, caractères de fin tronqués |
Erreur du compilateur C2027 | utilisation du type non défini 'type' |
Erreur du compilateur C2028 | un membre struct/union doit être dans un struct/union |
Erreur du compilateur C2029 | (Obsolète) la partie gauche de 'token' spécifie un 'identifier' non défini de type classe/struct/interface |
Erreur du compilateur C2030 | un destructeur avec l'accessibilité 'protected private' ne peut pas être membre d'une classe déclarée 'sealed' |
Erreur du compilateur C2031 | un destructeur virtuel avec l'accessibilité 'accessibility' n'est pas autorisé pour ce type |
Erreur du compilateur C2032 | 'identifier' : la fonction ne peut pas être membre du struct/de l'union 'type' |
Erreur du compilateur C2033 | 'identifier' : un champ de bits ne peut pas avoir d’indirection |
Erreur du compilateur C2034 | 'identifier' : type de champ de bits trop petit pour le nombre de bits |
Erreur du compilateur C2035 | un destructeur non virtuel avec l'accessibilité 'accessibility' n'est pas autorisé pour ce type |
Erreur du compilateur C2036 | 'identifier' : taille inconnue |
Erreur du compilateur C2037 | la partie gauche de 'operator' indique un struct/une union 'type' non défini |
Erreur du compilateur C2038 | l'espace de noms std ne peut pas être inline |
Erreur du compilateur C2039 | 'identifier1' : n’est pas membre de 'identifier2' |
Erreur du compilateur C2040 | « opérateur » : les niveaux d'indirection de « identificateur1 » et de « identificateur2 » sont différents |
Erreur du compilateur C2041 | chiffre non valide 'character' pour 'number' de base |
Erreur du compilateur C2042 | les mots clés signed/unsigned s'excluent mutuellement |
Erreur du compilateur C2043 | instruction break non conforme |
Erreur du compilateur C2044 | instruction continue non conforme |
Erreur du compilateur C2045 | 'identifier' : étiquette redéfinie |
Erreur du compilateur C2046 | instruction case non conforme |
Erreur du compilateur C2047 | instruction default non conforme |
Erreur du compilateur C2048 | plusieurs 'default' |
Erreur du compilateur C2049 | 'namespace-name' : impossible de rouvrir un espace de noms non inline comme inline |
Erreur du compilateur C2050 | expression de commutateur non intégrale |
Erreur du compilateur C2051 | l'expression case n'est pas une constante |
Erreur du compilateur C2052 | 'type' : type non valide pour une expression case |
Erreur du compilateur C2053 | 'identifier' : incompatibilité de chaîne large |
Erreur du compilateur C2054 | '(' attendu après 'identifier' |
Erreur du compilateur C2055 | liste de paramètres structurés attendue, ne constituant pas une liste de types |
Erreur du compilateur C2056 | expression non valide |
Erreur du compilateur C2057 | expression constante attendue |
Erreur du compilateur C2058 | expression constante non intégrale |
Erreur du compilateur C2059 | erreur de syntaxe : 'token' |
Erreur du compilateur C2060 | erreur de syntaxe : fin de fichier rencontrée |
Erreur du compilateur C2061 | erreur de syntaxe : identificateur 'identifier' |
Erreur du compilateur C2062 | type 'type' inattendu |
Erreur du compilateur C2063 | 'identifier' : n’est pas une fonction |
Erreur du compilateur C2064 | le terme ne correspond pas à une fonction qui prend number arguments |
Erreur du compilateur C2065 | 'identifier' : identificateur non déclaré |
Erreur du compilateur C2066 | cast en type fonction non valide |
Erreur du compilateur C2067 | cast en type tableau non conforme |
Erreur du compilateur C2068 | utilisation non valide de la fonction surchargée. Liste d'arguments manquante ? |
Erreur du compilateur C2069 | cast d'un terme 'void' en non 'void' |
Erreur du compilateur C2070 | 'type' : opérande sizeof non valide |
Erreur du compilateur C2071 | 'identifier' : classe de stockage non valide |
Erreur du compilateur C2072 | 'identifier' : initialisation d'une fonction |
Erreur du compilateur C2073 | (Obsolète) 'identifier' : les éléments d'un tableau partiellement initialisé doivent avoir un constructeur par défaut |
Erreur du compilateur C2074 | 'identifier' : l’initialisation de 'type' nécessite une liste d’initialiseurs entre accolades |
Erreur du compilateur C2075 | 'identifier' : l'initialisation du tableau nécessite une liste d'initialiseurs entre accolades |
Erreur du compilateur C2076 | une liste d'initialiseurs entre accolades ne peut pas être utilisée dans une expression new dont le type contient 'type' |
Erreur du compilateur C2077 | initialiseur de champ non scalaire 'identifier' |
Erreur du compilateur C2078 | initialiseurs trop nombreux |
Erreur du compilateur C2079 | 'identifier' utilise un struct/une classe/une union 'type' non défini |
Erreur du compilateur C2080 | 'identifier' : le type de 'type' peut être déduit seulement à partir d'une seule expression d'initialiseur |
Erreur du compilateur C2081 | 'identifier' : nom non valide dans une liste de paramètres formels |
Erreur du compilateur C2082 | redéfinition du paramètre formel 'identifier' |
Erreur du compilateur C2083 | comparaison struct/union non conforme |
Erreur du compilateur C2084 | la fonction 'identifier' a déjà un corps |
Erreur du compilateur C2085 | 'identifier' : ne figure pas dans la liste de paramètres formels |
Erreur du compilateur C2086 | 'identifier' : redéfinition |
Erreur du compilateur C2087 | 'identifier' : indice manquant |
Erreur du compilateur C2088 | 'operator' : non valide pour struct/classe/union |
Erreur du compilateur C2089 | 'identifier' : 'type' trop grand |
Erreur du compilateur C2090 | la fonction renvoie un tableau |
Erreur du compilateur C2091 | la fonction renvoie une fonction |
Erreur du compilateur C2092 | le type d'élément de tableau 'identifier' ne peut pas être une fonction |
Erreur du compilateur C2093 | 'identifier1' : ne peut pas être initialisé avec l'adresse de la variable automatique identifier2' |
Erreur du compilateur C2094 | étiquette 'identifier' non définie |
Erreur du compilateur C2095 | 'function' : le paramètre réel a le type 'void' : paramètre number |
Erreur du compilateur C2096 | 'identifier' : un membre de données ne peut pas être initialisé avec un initialiseur entre parenthèses |
Erreur du compilateur C2097 | initialisation non valide |
Erreur du compilateur C2098 | jeton inattendu après le membre de données 'identifier' |
Erreur du compilateur C2099 | l'initialiseur n'est pas une constante |
Voir aussi
Erreurs et avertissements du compilateur C/C++ et des outils de génération
Erreurs du compilateur C2001 – C3999, C7000 – C7999