私が理解していることから、 intptr_t の定義はアーキテクチャによって異なります-プロセスのすべての均一なアドレス空間にアクセスできるポインターを表す能力があることが保証されています。
Nginx (人気のあるオープン ソース Web サーバー) は、フラグ (ブール値) として使用される型を定義し、これは への typedefintptr_t
です。例として x86-64 アーキテクチャを使用すると、すべてのサイズのオペランドをカバーする大量の命令にアクセスできますが、なぜフラグを intptr_t に定義するのでしょうか。確かに、32 ビットの bool 型を使用するという伝統も同様に法案に適合するでしょうか?
私は32ビットのVを超えました。私が新しい開発者だったとき、8 ビット bools は自分自身を議論し、結論は、プロセッサ設計の複雑さのために、一般的なケースでは 32 ビット bool の方がパフォーマンスが優れているというものでした。では、なぜ 64 ビット bools に移行する必要があるのでしょうか?