char は正確に 8 ビット長であることが保証されていますか?

ANSI C 仕様のコピーから、セクション 3.1.2.5 - タイプを参照してください。 :

「実行文字セット」の概念は、セクション 2.2.1 - 文字セットで紹介されています .

つまり、char は、基本的な実行文字セットを構成する少なくとも 95 個の異なる文字のエンコーディングを格納するのに十分な大きさである必要があります。

これにセクション 2.2.4.2 - 数値制限 を追加します。

これで、文字のビット数は 少なくとも ある必要があります。 8.


いいえ、8 ビットであるとは限りません。 sizeof(char) は 1 であることが保証されていますが、必ずしも 1 つの 8 ビット バイトを意味するわけではありません。


いいえ、char データ型には少なくとも 8 ビットが含まれている必要があります (ANSI C 仕様を参照)