Maison développement back-end C++ Résoudre le problème « erreur : initialiseur attendu avant le type de données » dans le code C++

Résoudre le problème « erreur : initialiseur attendu avant le type de données » dans le code C++

Aug 25, 2023 pm 01:24 PM
error c++ 代码

解决C++代码中出现的“error: expected initializer before 'datatype'”问题

Résolvez le problème "erreur : initialiseur attendu avant 'type de données'" dans le code C++

En programmation C++, nous rencontrerons parfois des erreurs de compilation lors de l'écriture du code, l'une des erreurs courantes est " erreur : initialiseur attendu avant ' type de données'". Cette erreur se produit généralement dans une déclaration de variable ou une définition de fonction et peut entraîner l'échec de la compilation ou de l'exécution correcte du programme. Cet article présentera la cause et la solution de cette erreur, tout en fournissant des exemples de code pour aider les lecteurs à mieux comprendre.

Cette erreur est généralement causée par des erreurs de syntaxe ou des types de données incorrects. Vous trouverez ci-dessous quelques situations courantes et solutions à l’origine de cette erreur.

  1. Point-virgule manquant lors de la déclaration des variables :

    int a  // 缺少分号
    int b;
    Copier après la connexion

    Dans cet exemple, si les variables a et b sont déclarées sur la même ligne et qu'il manque un point-virgule, le compilateur signalera une erreur "erreur : initialiseur attendu avant 'int' ". À ce stade, il vous suffit d'ajouter un point-virgule après la déclaration de a pour résoudre le problème :

    int a;
    int b;
    Copier après la connexion
  2. Il manque une liste de paramètres au prototype ou à la définition de la fonction :

    void func  // 缺少参数列表
    {
     // 函数体
    }
    Copier après la connexion

    Dans cet exemple, la définition de la fonction func il manque une liste de paramètres, ce qui entraîne que le compilateur ne peut pas analyser correctement la définition de la fonction. Pour résoudre ce problème, vous devez compléter la liste des paramètres de la fonction :

    void func()
    {
     // 函数体
    }
    Copier après la connexion
  3. Type de données incorrect ou faute d'orthographe du nom de la variable :

    int entger;  // 错误的数据类型拼写
    int count = 0;
    Copier après la connexion

    Dans cet exemple, le type de données de la variable entger est mal orthographié et doit être entier au lieu de entier . Cela empêchera le compilateur de reconnaître ce type de données et signalera une erreur "erreur : initialiseur attendu avant 'int'". Pour résoudre ce problème, remplacez simplement entier par entier :

    int integer;
    int count = 0;
    Copier après la connexion
  4. Ordre de référence des fichiers d'en-tête incorrect :
    En C++, l'ordre de référence des fichiers d'en-tête est très important. Des erreurs de compilation peuvent également se produire si les fichiers d'en-tête sont référencés dans le mauvais ordre. Par exemple, si une classe utilise une autre classe, mais que les fichiers d'en-tête des deux classes sont référencés dans le mauvais ordre, une erreur « erreur : initialiseur attendu avant 'type de données' » se produira. Pour résoudre ce problème, assurez-vous simplement que les fichiers d'en-tête sont référencés dans le bon ordre.

En plus des problèmes courants dans les exemples ci-dessus, il existe d'autres situations qui peuvent également provoquer cette erreur. Par exemple, il peut y avoir des variables ou des fonctions non définies, ou des parenthèses non fermées, etc. Lorsque nous rencontrons cette erreur, nous devons vérifier soigneusement le code pour découvrir le problème et corriger l'erreur à l'aide des invites d'erreur du compilateur.

Pour résumer, l'erreur « erreur : initialiseur attendu avant « type de données » » dans le code C++ est généralement causée par des erreurs de syntaxe ou des types de données incorrects. Pour corriger cette erreur, découvrez simplement où se situe le problème, vérifiez attentivement le code et corrigez-le selon les invites d'erreur. En comprenant l'exemple ci-dessus, nous espérons que les lecteurs pourront mieux comprendre cette erreur et être en mesure d'éviter ou de résoudre ce type d'erreur lors de l'écriture du code.

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 de ce site Web
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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment implémenter le Strategy Design Pattern en C++ ? Comment implémenter le Strategy Design Pattern en C++ ? Jun 06, 2024 pm 04:16 PM

Les étapes pour implémenter le modèle de stratégie en C++ sont les suivantes : définir l'interface de stratégie et déclarer les méthodes qui doivent être exécutées. Créez des classes de stratégie spécifiques, implémentez l'interface respectivement et fournissez différents algorithmes. Utilisez une classe de contexte pour contenir une référence à une classe de stratégie concrète et effectuer des opérations via celle-ci.

L'Université Tsinghua et Zhipu AI open source GLM-4 : lancent une nouvelle révolution dans le traitement du langage naturel L'Université Tsinghua et Zhipu AI open source GLM-4 : lancent une nouvelle révolution dans le traitement du langage naturel Jun 12, 2024 pm 08:38 PM

Depuis le lancement du ChatGLM-6B le 14 mars 2023, les modèles de la série GLM ont reçu une large attention et une grande reconnaissance. Surtout après que ChatGLM3-6B soit open source, les développeurs sont pleins d'attentes pour le modèle de quatrième génération lancé par Zhipu AI. Cette attente a finalement été pleinement satisfaite avec la sortie du GLM-4-9B. La naissance du GLM-4-9B Afin de donner aux petits modèles (10B et moins) des capacités plus puissantes, l'équipe technique de GLM a lancé ce nouveau modèle open source de la série GLM de quatrième génération : GLM-4-9B après près de six mois de exploration. Ce modèle compresse considérablement la taille du modèle tout en garantissant la précision, et offre une vitesse d'inférence plus rapide et une efficacité plus élevée. L’exploration de l’équipe technique du GLM n’a pas

Comment implémenter la gestion des exceptions imbriquées en C++ ? Comment implémenter la gestion des exceptions imbriquées en C++ ? Jun 05, 2024 pm 09:15 PM

La gestion des exceptions imbriquées est implémentée en C++ via des blocs try-catch imbriqués, permettant de déclencher de nouvelles exceptions dans le gestionnaire d'exceptions. Les étapes try-catch imbriquées sont les suivantes : 1. Le bloc try-catch externe gère toutes les exceptions, y compris celles levées par le gestionnaire d'exceptions interne. 2. Le bloc try-catch interne gère des types spécifiques d'exceptions, et si une exception hors de portée se produit, le contrôle est confié au gestionnaire d'exceptions externe.

Le modèle de code open source Mistral monte sur le trône ! Codestral est fou de formation dans plus de 80 langues, et les développeurs nationaux de Tongyi demandent à participer ! Le modèle de code open source Mistral monte sur le trône ! Codestral est fou de formation dans plus de 80 langues, et les développeurs nationaux de Tongyi demandent à participer ! Jun 08, 2024 pm 09:55 PM

Produit par 51CTO Technology Stack (WeChat ID : blog51cto) Mistral a publié son premier modèle de code Codestral-22B ! Ce qui est fou avec ce modèle, ce n'est pas seulement qu'il est formé sur plus de 80 langages de programmation, dont Swift, etc., que de nombreux modèles de code ignorent. Leurs vitesses ne sont pas exactement les mêmes. Il est nécessaire d'écrire un système de « publication/abonnement » en langage Go. Le GPT-4o ici est en cours de sortie, et Codestral remet le papier si vite qu'il est difficile de le voir ! Le modèle venant tout juste d’être lancé, il n’a pas encore été testé publiquement. Mais selon le responsable de Mistral, Codestral est actuellement le modèle de code open source le plus performant. Les amis intéressés par la photo peuvent se déplacer vers : - Faire un câlin : https

Comment utiliser l'héritage de modèles C++ ? Comment utiliser l'héritage de modèles C++ ? Jun 06, 2024 am 10:33 AM

L'héritage de modèle C++ permet aux classes dérivées d'un modèle de réutiliser le code et les fonctionnalités du modèle de classe de base, ce qui convient à la création de classes avec la même logique de base mais des comportements spécifiques différents. La syntaxe d'héritage du modèle est : templateclassDerived:publicBase{}. Exemple : templateclassBase{};templateclassDerived:publicBase{};. Cas pratique : création de la classe dérivée Derived, héritage de la fonction de comptage de la classe de base Base et ajout de la méthode printCount pour imprimer le décompte actuel.

Pourquoi une erreur se produit-elle lors de l'installation d'une extension à l'aide de PECL dans un environnement Docker? Comment le résoudre? Pourquoi une erreur se produit-elle lors de l'installation d'une extension à l'aide de PECL dans un environnement Docker? Comment le résoudre? Apr 01, 2025 pm 03:06 PM

Causes et solutions pour les erreurs Lors de l'utilisation de PECL pour installer des extensions dans un environnement Docker Lorsque nous utilisons un environnement Docker, nous rencontrons souvent des maux de tête ...

Quel est le rôle de char dans les chaînes C Quel est le rôle de char dans les chaînes C Apr 03, 2025 pm 03:15 PM

En C, le type de char est utilisé dans les chaînes: 1. Stockez un seul caractère; 2. Utilisez un tableau pour représenter une chaîne et se terminer avec un terminateur nul; 3. Faire fonctionner via une fonction de fonctionnement de chaîne; 4. Lisez ou sortant une chaîne du clavier.

Comment gérer les exceptions C++ cross-thread ? Comment gérer les exceptions C++ cross-thread ? Jun 06, 2024 am 10:44 AM

En C++ multithread, la gestion des exceptions est implémentée via les mécanismes std::promise et std::future : utilisez l'objet promise pour enregistrer l'exception dans le thread qui lève l'exception. Utilisez un objet futur pour rechercher des exceptions dans le thread qui reçoit l'exception. Des cas pratiques montrent comment utiliser les promesses et les contrats à terme pour détecter et gérer les exceptions dans différents threads.

See all articles