Maison >développement back-end >C++ >Les membres de tableaux flexibles sont-ils valides en C ?
Membres de tableau flexibles en C
En C99, les membres de tableau flexibles peuvent être utilisés pour déclarer des tableaux de taille inconnue dans le cadre d'une structure. Cependant, la validité de cette fonctionnalité en C a été un sujet de confusion.
Validité en C
C a été standardisé en 1998, avant l'introduction des membres de tableau flexibles. en C99. Par conséquent, les membres de tableau flexibles ne sont pas pris en charge en C.
Déclaration correcte
Malgré l'idée fausse, '[0]' est une déclaration valide pour un membre de tableau flexible dans C. Cette syntaxe indique que la taille du tableau n'est pas spécifiée et doit être définie par l'utilisateur au moment de l'exécution.
Exemple
En C , le code suivant compilera et exécuter sans erreurs :
struct Blah { int foo[0]; };
En revanche, la syntaxe '[]' sans taille n'est pas valide en C . Tenter de déclarer un membre de tableau flexible en utilisant cette syntaxe entraînera une erreur du compilateur.
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!