Maison >développement back-end >C++ >Voici quelques titres potentiels pour votre article, formatés sous forme de paires question-réponse : **Option 1 (Focus sur l'erreur) :** * **Pourquoi est-ce que je reçois une erreur \'expression constante attendue\' lorsque d
Erreur d'expression constante attendue dans la taille du tableau
En C, une déclaration de tableau nécessite une taille constante. Lorsqu'une tentative est effectuée pour déclarer un tableau avec une expression non constante, une erreur « expression constante attendue » se produit.
Considérez l'extrait de code suivant :
<code class="cpp">int size = 100; float x[size][2]; // Error</code>
Dans cet exemple, size est une valeur d'exécution, ce qui en fait une expression non constante. Par conséquent, le compilateur ne peut pas déterminer la taille du tableau au moment de la compilation, ce qui entraîne l'erreur.
Résolution
Pour résoudre ce problème, utilisez une structure de données qui prend en charge le dimensionnement dynamique, tel qu'un std::vector:
<code class="cpp">std::vector<std::array<float, 2>> x(size);</code>
Vous pouvez également utiliser new pour allouer de la mémoire au tableau :
<code class="cpp">float (*px)[2] = new float[size][2];</code>
N'oubliez pas de supprimer[] px après utilisez pour libérer la mémoire.
Autres options
Si vous n'avez pas accès aux fonctionnalités C modernes comme std::vector:
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!