我进行了一些搜索,并了解了这些数据类型之间的区别。但是,令我困惑的是,导致差异的原因。当我转到stdin.h
库时,我看到int8_t
和int_fast8_t
是typedef作为signed char
。所以,是一样的,对吗?但是,为什么int_fast8_t
在速度方面总是更快或等于int8_t
?
最佳答案
显然,有了这些定义,无论您使用哪种平台,int8_t
和int_fast8_t
都同样快。在某些平台上,大于8位的大小可能会更快,在这种情况下,将def int_fast8_t
键入更大的类型将是适当的。在没有8位类型的平台上(某些DSP将char
定义为16位或32位,而某些旧系统使用9位字节),int8_t
将不存在,但int_fast8_t
将存在。
关于c++ - 是什么导致int8_t和int_fast8_t不同?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36520586/