iOS 如何处理特殊枚举值
在编写
AVAudioRecorder 相关程序时,发现 AVFoundation 中有如下枚举定义:
枚举值是由多个字符定义的,通常是
4 个字符,因为 4 个字符一共 4 字节正好组成一个 int。
那么怎样从这样的枚举值中获取相应的字符串信息呢?
我们需要先了解他,首先,这种定义在
C/C++中是完全允许的,但是语言标准中并没有具
体规定它的执行(
参考
)。在
iOS/Mac 环境下测试,结果是把每个字符的对应字节(字符的
ASCII 码)倒着拼成一个 4 字节的 int,因为 iOS 也是 Little Endian 环境。
所以可以这样做:
int
value =
'Mgen'
;
NSLog
(
@"%d"
, value);
//手动创建一个这样的常量