5

私がcでデータ型を学んでいた間。私はデータ型int_fast8_tに出会いました。int_least8_t私はこれらを知らなかったので、ググってみました。ここでいくつかの答えを見つけました:

int8_t、int_least8_t、int_fast8_t の違いは?

答えint_fast8_tは最速ですが、何が高速なのかに驚いています。コンパイラは高速化するためにどのような手法を使用しますか? intまた、 datatype とshortlongint サイズを変更する修飾子が存在する場合。この ( int_fast8_t) データ型の必要性は何ですか?

が速い場合は、誰もがスピードを必要とするため、int_fast8_t単純に無視intしてint_fast8_t常に使用できます。

制限はありますint_fast8_tか? 間の長所または短所は何ですかint_fast8_t and int

4

3 に答える 3

3

たとえば、32 ビット プラットフォームでは、intは 32 ビットです。CPU には、データの 32 ビット チャンクを操作する命令がある場合があります。8ビットデータの場合、そのような命令がない場合があります。この場合、CPU はおそらくビット単位の操作を使用して 8 ビット型のデータを処理する必要があります。

そのようなプラットフォームでint_fast8_tは、 は 32 ビットとして実装される場合がありますint。ただし、32 ビットとして使用することはできませんint。未定義の動作のない 8 ビット型のようにしか使用できません。

于 2013-08-10T14:56:06.480 に答える