


Résoudre le problème ? erreur?: initialiseur attendu avant le type de données ? dans le code C++
Aug 25, 2023 pm 01:24 PMRé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.
-
Point-virgule manquant lors de la déclaration des variables?:
int a // 缺少分號 int b;
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;
Il manque une liste de paramètres au prototype ou à la définition de la fonction?:
void func // 缺少參數(shù)列表 { // 函數(shù)體 }
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() { // 函數(shù)體 }
Type de données incorrect ou faute d'orthographe du nom de la variable :
int entger; // 錯誤的數(shù)據(jù)類型拼寫 int count = 0;
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;
- 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!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

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

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

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

Article chaud

Outils chauds

Bloc-notes++7.3.1
éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

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

Les fonctions sont l'unité de base de l'organisation du code en C, utilisé pour réaliser la réutilisation et la modulation du code; 1. Les fonctions sont créées par des déclarations et des définitions, telles que INTADD (INTA, INTB) renvoie la somme des deux nombres; 2. Passez les paramètres lors de l'appel de la fonction et renvoyez le résultat du type correspondant après l'exécution de la fonction; 3. La fonction sans rendement de fonction utilise vide comme type de retour, tel que voidgreet (StringName) pour la sortie des informations de salutation; 4. L'utilisation des fonctions peut améliorer la lisibilité du code, éviter la duplication et faciliter la maintenance, qui est le concept de base de la programmation C.

DecType est un mot-clé utilisé par C 11 pour déduire les types d'expression au moment de la compilation. Les résultats de la dérivation sont précis et n'effectuent pas de conversion de type. 1. Dectype (Expression) n'analyse que les types et ne calcule pas les expressions; 2. Déduire le nom de variable Dectype (x) en tant que type de déclaration, tandis que Decltype ((x)) est déduit comme x en raison de l'expression de Lvalue; 3. Il est souvent utilisé dans les modèles pour déduire la valeur de retour via le type de retour de queue 4. Les déclarations de type complexe peuvent être simplifiées en combinaison avec Auto, telles que Dectype (Vec.Begin ()) IT = Vec.Begin (); 5. évitez les classes codées durs dans les modèles

C FoldeRexpressions est une caractéristique introduite par C 17 pour simplifier les opérations récursives dans les modèles de paramètres variadiques. 1. Le pli gauche (args ...) Sum de gauche à droite, comme la somme (1,2,3,4,5) renvoie 15; 2. Logical et (args && ...) déterminez si tous les paramètres sont vrais, et les paquets vides renvoient vrai; 3. Utiliser (std :: cout

AbinarySearchtree (BST) IsabinaryTreewhereTheleftsUbtreContainainslyNodeswithvalueslesshanthenode’svalue, TheRightSubTreConontainsonlyNodeswithvaluesGreaterthantheNode’svalue, andbothsubtreeSustalsobeBsts; 1. implémentation de la thèsecluserenereenstructurestructrescobebe;

Les références sont alias pour les variables, qui doivent être initialisées à la déclaration et ne peuvent pas être référentes. 1. Les références partagent la même adresse de mémoire via Alias. La modification de tout nom affectera la valeur d'origine; 2. Les références peuvent être utilisées pour réaliser une transmission bidirectionnelle et éviter les frais généraux de copie; 3. Les références ne peuvent pas être vides et avoir la grammaire, et n'ont pas la capacité de se rapporter par rapport aux pointeurs; 4. Constt & peut être utilisé pour transmettre en toute sécurité les paramètres, empêcher la modification et la liaison de support d'objets temporaires; 5. Les références des variables locales ne doivent pas être renvoyées pour éviter les erreurs de référence suspendues. La ma?trise des citations est le principal fondement de la compréhension du C. moderne C.

Pour écrire du code Java8 concis et coutumier, vous devez utiliser raisonnablement les fonctionnalités de la langue moderne et suivre les principes de lisibilité et de maintenabilité. 1. Utilisez des expressions Lambda et des références de méthode pour remplacer les classes intérieures anonymes, telles que l'utilisation de People.sort (comparateur.comparement (personne :: getName)) au lieu du comparateur traditionnel, et lorsque Lambda n'appelle qu'une seule méthode, utilisez System.out :: println et autres méthodes à référence; 2. Utilisez Streamapi dans la conversion de données, tels que users.stream (). Filter (utilisateur :: isactive) .map (US

Tout d'abord, clarifions la réponse: cet article présente l'utilisation de FStream en C, y compris les opérations de lecture et d'écriture de fichiers de base et les fonctions de lecture et d'écriture bidirectionnelles avancées. 1. Utilisez STD :: FStream pour définir l'objet de flux de fichiers et ouvrez le fichier dans un mode spécifié (comme std :: ios :: out, std :: ios :: in); Utilisez-le lors de l'écriture

TODEBUGAC ApplicationUsingGdBinVisualStudiocode, ConfigureTheLaUnch.jsonFileCorrectly; KeySettingSinclut IspecifierTheExECutablePathWith "Program", Définition "MIMODE" vers "GDB" et "Tapez" vers "CPPDBG"
