我在objective-c中使用哪个(特别是在iOS上)有什么不同吗?我假设它来自从 C 及其类型继承,以及从 iOS 所基于的 Mac OS 继承类型,但我不知道应该使用哪一个:
unsigned char
从...嗯..编译器?
uint8_t
来自 stdint.h
UInt8
来自 MacTypes.h
Byte
来自 MacTypes.h
Bytef
来自 zconf.h
我知道各种 defs 是出于可移植性的原因,并且使用类似unsigned char
的文字并不是好的未来想法(大小可能会改变,事情最终会像 Windows API 一样)。我想要一些关于如何找到最适合我使用的建议的建议。或者,如果我只是傻的话,我会狠狠地鞭笞……
编辑:只是为了获得更多信息,如果我想要一些永远是 1 字节的东西,我应该使用 uint8_t (看起来它不会用这样的名字改变)?我想 UInt8 也不会改变,但我看到 UInt32 的定义因处理器是否为 64 位而异。
进一步编辑:当我说字节时,我的意思是我想要 8 位。我正在为磁盘存储进行像素压缩操作(32 位-> 8 位)。