C では可変長配列が禁止されているという一般的な認識にもかかわらず、提供されているコードはそうではないことを示しています。これはどのように可能ですか?
C 標準では、コンパイラが可変長配列 (VLA) をサポートする必要はありません。ただし、GCC 4.7 以降などの一部のコンパイラは、拡張機能として VLA サポートを提供します。問題のコードはこの拡張機能を利用しているため、正常にコンパイルおよび実行されます。
VLA は当初 C 14 に含まれる予定でしたが、最終的には除外されたことに注意することが重要です。また、これらは C 17 にも組み込まれませんでした。したがって、VLA サポートは特定のコンパイラーに固有の拡張機能のままであり、標準の C 機能ではありません。
以上がC は本当に可変長配列を扱えるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。