C99は 10 年以上前から存在していますが、サポートが遅れているため、ほとんどの開発者は C89 を使い続けています。今日でも、C コードで C99 の機能に出くわすと、少し驚くことがあります。
ほとんどの主要なコンパイラが C99 をサポートするようになったので (MSVC は顕著な例外であり、一部の組み込みコンパイラも遅れをとっています)、C を扱う開発者は、C99 のどの機能が利用できるかをおそらく知っておくべきだと思います。一部の機能は、これまで標準化されたことのない一般的な機能 (snprintf
たとえば ) であるか、C++ でおなじみの機能 (柔軟な変数宣言の配置、または単一行//
コメント) ですが、一部の新機能は C99 で最初に導入されたものであり、多くのプログラマーにはなじみがありません。
C99 の最も便利な新機能は何ですか?
参考までに、C99 標準(ドラフトとしてラベル付けされていますが、私が知る限り、更新された標準と同じです)、新機能のリスト、およびGCC C99 実装ステータス.
回答ごとに 1 つの機能をお願いします。複数の回答を残してください。新機能を示す短いコード例が推奨されます。