ホームページ >バックエンド開発 >C++ >柔軟な配列メンバーは C で使用できますか?

柔軟な配列メンバーは C で使用できますか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-13 20:51:17745ブラウズ

Are Flexible Array Members Allowed in C  ?

C ではフレキシブルな配列メンバーは有効ですか?

C99 では、フレキシブルなメンバー配列を構造体内で宣言できるため、配列サイズを次のように指定できます。不特定。ただし、同じ構文は C には適用できません。 Clang で試行するとコンパイルに失敗し、[0] を含めるように宣言を変更する必要がありました。

C での有効性

C 標準によれば、は、柔軟なメンバー配列への明示的な参照ではありません。これは、それらが C では有効ではないことを示唆しています。

正しい宣言

伝統的に [0] は配列に対して無効な宣言とみなされていますが、有効な宣言であるように見えます。柔軟なメンバー配列の場合。標準の配列動作からのこの逸脱は、C のフレキシブル メンバー配列に特有です。

結論

フレキシブル メンバー配列は、C99 で使用可能であっても、C では無効です。 C でのこの機能の除外は、C が C に導入される前に標準化されたという事実に由来しています。

以上が柔軟な配列メンバーは C で使用できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。