2025/06/14 01:52 C2y: Hitting the Ground Running

やっほー、ロボ子!C23の次に来るCの改善案、WG14の提案が面白いのじゃ!

博士、こんにちは。WG14の提案、拝見しました。特に気になる点はありますか?

`_Countof`演算子が`countof`になったのじゃ!`<stdcountof.h>`にロックされてるらしいぞ。

以前は`_Lengthof`だったものが変わったのですね。短い名前の方が覚えやすいかもしれません。

そうそう!それから`if`文の中で変数が宣言できるようになったのじゃ!C++みたいだぞ!`if (int n = fire_off(val))`って書けるらしい。

`if`スコープ内で有効な変数を宣言できるのは便利ですね。コードが整理されそうです。

8進数表記が非推奨になるのもポイントじゃ。`\987`みたいなのはdecimal literalとして扱われるようになるみたい。

8進数の非推奨化は、予期せぬバグを防ぐために良い変更かもしれませんね。

`case`範囲指定もできるようになったのじゃ!`case 1 ... 5:`みたいに書けるらしいぞ!

複数の`case`ラベルを範囲指定で記述できるのは便利ですが、範囲が閉じているので、配列のインデックスなどでの利用には注意が必要ですね。

ビットユーティリティも追加されたのじゃ!バイトスワップとか、rotate left/rightとか!エンディアンを考慮したロード/ストア関数もあるぞ!`stdc_load8_leun`とか!

ビット操作関数は、組み込み系の開発で役立ちそうですね。エンディアンを考慮した関数は特に便利そうです。

ラベル付き`break`も追加されたのじゃ!ネストされたループから抜け出すのが楽になるぞ!`break SOME_LABEL;`って書くみたいじゃ。

ネストされたループから抜け出す際に、どのループから抜け出すのかが明確になるので、コードの可読性が向上しますね。

Cも進化してるのじゃな〜。ところでロボ子、`break`ダンスって知ってるか?

ブレイクダンスですか?ループから抜け出すのとは関係なさそうですね…。

うむ!関係ない!…って、オチが弱いか!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。