Maison >développement back-end >C++ >Comment corriger une erreur de syntaxe « l'expression doit avoir une valeur constante » lors de la déclaration de tableaux en C ?

Comment corriger une erreur de syntaxe « l'expression doit avoir une valeur constante » lors de la déclaration de tableaux en C ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-10 06:40:21821parcourir

How Do I Fix a

Dépannage : erreur de syntaxe dans la déclaration du tableau

Lorsque vous essayez de créer un tableau à partir de variables déclarées, vous pouvez rencontrer l'erreur :

expression must have a constant value

Cette erreur survient parce que les tableaux en C nécessitent des expressions constantes pour leur tailles.

Résolution de l'erreur

Pour résoudre cette erreur, vous avez deux options :

  1. Créer un tableau dynamique sur le tas :

Les tableaux dynamiques permettent un dimensionnement variable en allouant mémoire sur le tas. Cependant, vous devez allouer et libérer manuellement cette mémoire à l'aide des opérateurs new et delete :

// Allocate the array
int** arr = new int*[row];
for (int i = 0; i < row; i++)
    arr[i] = new int[col];
// Use the array
// ...

// Deallocate the array
for (int i = 0; i < row; i++)
    delete[] arr[i];
delete[] arr;
  1. Déclarer la taille du tableau comme constante :

Pour conserver un tableau de taille fixe, vous devez déclarer les dimensions comme constant :

const int row = 8;
const int col = 8;
int arr[row][col];

Attentions

La syntaxe que vous avez fournie, int [row][col];, est incorrecte car elle ne spécifie pas de nom de variable pour le tableau.

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