Maison >développement back-end >C++ >Comment résoudre l'« Erreur d'expression constante attendue » pour la taille du tableau en C ?

Comment résoudre l'« Erreur d'expression constante attendue » pour la taille du tableau en C ?

DDD
DDDoriginal
2024-10-24 21:55:02706parcourir

How to Resolve the

Erreur d'expression constante attendue pour la taille du tableau

En C, déclarer des tableaux avec des tailles d'exécution n'est pas autorisé. Cette erreur se produit dans la ligne float x[size][2] car le compilateur s'attend à ce que la taille du tableau soit une expression constante.

Résolution

Pour résoudre cette erreur , on peut utiliser des approches alternatives :

  1. std::vector : utilisez un vecteur de tableaux pour spécifier la taille du tableau au moment de l'exécution : std::vector< std::array > x(size);
  2. Allocation dynamique de mémoire : Utiliser l'allocation dynamique de mémoire à l'aide des opérateurs new et delete : float (*px)[2] = new float[size][2];.
  3. Type de tableau personnalisé : définissez un type de tableau personnalisé qui peut être placé dans un vecteur si ni C 11 ni boost ne sont accessibles.
  4. std::pair  : Utilisez un vecteur de std::pair pour une syntaxe plus simple : std::vector< std::paire > x(size);

Il est important de noter que les erreurs d'expression constante attendues se produisent lorsqu'une expression ne peut pas être évaluée au moment de la compilation. Pour les déclarations de tableau, l'utilisation d'expressions constantes garantit que le compilateur peut déterminer la taille du tableau lors de la compilation.

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