我进行了一些搜索,并了解了这些数据类型之间的区别。但是,令我困惑的是,导致差异的原因。当我转到stdin.h库时,我看到int8_tint_fast8_t是typedef作为signed char。所以,是一样的,对吗?但是,为什么int_fast8_t在速度方面总是更快或等于int8_t

最佳答案

显然,有了这些定义,无论您使用哪种平台,int8_tint_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/

10-12 15:06