Maison >développement back-end >C++ >Les tableaux de longueur variable (VLA) existent-ils en C ?
Tableaux de longueur variable en C
Malgré l'hypothèse courante selon laquelle C ne prend pas en charge les tableaux de longueur variable (VLA), il existe des moyens d'y parvenir fonctionnalité similaire. Cependant, il est important de noter que l'utilisation de ces méthodes ne garantit pas la compatibilité entre tous les compilateurs.
Explication du code
L'exemple de code que vous avez fourni se compile et fonctionne parce que :
Support standard
Il est important de noter que le standard C n'exige pas que les compilateurs prennent en charge les VLA. Par conséquent, le code qui utilise les VLA peut ne pas être portable sur différents compilateurs ou plates-formes.
Proposition échouée pour C 14 et C 17
Il a été initialement proposé que les VLA soient inclus dans la norme C 14. Cependant, la proposition n’a pas été votée et les VLA n’ont pas été ajoutés au texte. La proposition n'a pas non plus été acceptée pour inclusion dans C 17.
Conclusion
Bien que les VLA ne fassent pas officiellement partie de la norme C, ils peuvent être utilisés comme une extension dans certains compilateurs, comme GCC. Cependant, il est crucial d'être conscient des problèmes potentiels de portabilité et d'utiliser les VLA avec prudence, en particulier dans le code multiplateforme.
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!