Maison >développement back-end >C++ >Résoudre le problème « erreur : déclaration attendue avant le jeton '}' » dans le code C++

Résoudre le problème « erreur : déclaration attendue avant le jeton '}' » dans le code C++

WBOY
WBOYoriginal
2023-08-26 09:01:175161parcourir

解决C++代码中出现的“error: expected declaration before '}' token”问题

Résoudre le problème « erreur : déclaration attendue avant le jeton '}' » dans le code C++

Dans le processus d'écriture de code C++, nous rencontrons souvent diverses erreurs de compilation. L'une des erreurs courantes est "erreur : déclaration attendue avant le jeton '}'". Cette erreur se produit généralement lorsqu'il y a une paire d'accolades ({}) dans notre code qui ne correspondent pas correctement. Cet article expliquera les causes de cette erreur et proposera quelques moyens de la résoudre.

Analyse des causes

Lorsque le compilateur rencontre l'erreur "déclaration attendue avant le jeton '}'" lors de la compilation de notre code, cela signifie qu'il a trouvé une accolade invalide dans le code. Cela peut être dû à plusieurs raisons :

  1. Point-virgule manquant : un point-virgule manquant (;) à la fin du bloc de code peut provoquer cette erreur. Par exemple :
void foo() {
    int x = 2;
    int y = 3
} // 缺少分号
  1. Les crochets ne correspondent pas correctement : dans un bloc de code entre une paire d'accolades, si les accolades ne correspondent pas correctement, le compilateur pensera qu'il nous manque une instruction de déclaration. Par exemple :
void bar() {
    if (condition) {
        int x = 2;
} // 括号未正确匹配
  1. Les guillemets ne sont pas appariés correctement : si nous utilisons des guillemets dans une constante de chaîne ou de caractère, mais que les guillemets ne sont pas appariés correctement, cela peut également amener le compilateur à signaler une erreur. Par exemple :
void baz() {
    string s = "Hello world!";
    char c = 'a;
} // 引号未正确配对

Solution

Lorsque nous rencontrons l'erreur « erreur : déclaration attendue avant le jeton '}' », nous pouvons résoudre le problème en fonction de la cause de l'erreur. Voici quelques solutions courantes :

  1. Vérifiez le point-virgule manquant : Si l'erreur est causée par un point-virgule manquant, il suffit d'ajouter un point-virgule à la position correspondante. Par exemple :
void foo() {
    int x = 2;
    int y = 3;
} // 添加分号
  1. Vérifiez la correspondance des parenthèses : lorsque nous rencontrons une situation dans laquelle les parenthèses ne correspondent pas correctement, nous devons revérifier si les accolades dans le bloc de code correspondent correctement. S'il n'y a pas de correspondance, nous devons ajuster la position des parenthèses selon la logique du code. Par exemple :
void bar() {
    if (condition) {
        int x = 2;
    } // 正确
} 
  1. Vérifiez l'appariement des guillemets : Si l'erreur est causée par le fait que les guillemets ne sont pas appariés correctement, nous devons revérifier l'appariement des guillemets pour nous assurer que chaque devis a le guillemet de clôture correct. Par exemple :
void baz() {
    string s = "Hello world!";
    char c = 'a';
} // 引号正确配对

En plus des solutions ci-dessus, nous pouvons également utiliser certaines compétences de débogage pour nous aider à trouver la cause de l'erreur. Par exemple, nous pouvons utiliser les outils de débogage fournis par le compilateur pour parcourir le programme afin de trouver l'emplacement spécifique du problème.

Résumé

L'erreur « erreur : déclaration attendue avant le jeton '}' » est une erreur de compilation courante dans le code C++. Lorsque nous rencontrons cette erreur, nous devons vérifier soigneusement le code pour découvrir le problème et le résoudre en fonction de la cause. Cet article présente les causes et les solutions courantes de cette erreur, et fournit des exemples de code pour aider les lecteurs à mieux comprendre et résoudre ce problème. J'espère que les lecteurs pourront mieux gérer cette erreur de compilation courante grâce à l'introduction de cet article.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn