"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > La définition d'un tableau de longueur zéro dans C / C ++ est-elle valide et quelles sont les implications?

La définition d'un tableau de longueur zéro dans C / C ++ est-elle valide et quelles sont les implications?

Publié le 2025-03-22
Parcourir:642

Is Defining a Zero-Length Array in C/C   Valid and What are the Implications?

Implications de la définition d'un tableau de longueur zéro en c / c

malgré le manque d'erreurs du compilateur dans gcc, la définition d'un tableau de taille zéro (par exemple, le tableau int [0];) est invalide dans les deux et c. Selon ISO 9899: 2011 6.7.6.2, l'expression représentant la taille du tableau doit être une expression constante avec une valeur supérieure à zéro.

L'absence d'un avertissement dans GCC peut découler de son support pour le code hérité qui a utilisé des tableaux sans la syntaxe []. Cependant, il est crucial de comprendre que ces tableaux ne sont pas optimisés.

En C, un tableau de longueur zéro, également connu sous le nom de tableau vide, existe mais n'a pas d'éléments. Il peut être utile dans certaines situations, telles que les structures de pavage de queue à des fins d'alignement. Cependant, en général, il n'est pas recommandé de déclarer des tableaux avec une longueur zéro, car cela peut entraîner un comportement et des erreurs non définis.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3