できるだけ多くの記憶を絞り出そうとしています。intの行列があり4.9999995e13
ますが、必要なのは true または false だけです。基本的に、これらの int ごとに 1 ビットのストレージしか必要ありません。
Cには単一のビット型がないことを理解しています(誰かが理由を説明できるかもしれません)。また、short short int
存在する場合、charと同じ1バイトになることも知っています。ただし、C のすべての論理演算は int を返します (他のいくつかの関数も同様です)。
だから私の質問は:
- 存在させる方法はあり
short short int
ますか? - 代わりに使用
char
すると、すべてのキャストを実行する必要があるため、パフォーマンスが低下int
しますか? - 私が見逃している別の方法はありますか?
関連する場合に備えて、C99用のGCCでコンパイルしています。
編集このウィキペディアのページでタイプがあるのを見たばかり_Bool
ですが、これは実際に標準ですか?