我有一个int值,需要将其转换为字节数组。 在Objective-C中如何实现这个功能?是否有相应的方法可以使用?
谢谢。
我有一个int值,需要将其转换为字节数组。 在Objective-C中如何实现这个功能?是否有相应的方法可以使用?
谢谢。
int val = //... 以某种方式初始化整数 char* bytes = (char*) &val int len = sizeof(int);话虽如此,操作整数的最佳方式是进行位运算。例如,要获取最低位字节,可以使用 val&0xFF,获取下一个字节可以使用
(val>>8)&0xFF
,然后是 (val>>16)&0xFF
,(val>>24)&0xFF
等。<
inttypes.h
>
;,并使用 uint8_t
、uint16_t
、uint32_t
或 uint64_t
,具体取决于您需要多大的整数;否则,您无法可靠地操作更多字节的数字。sizeof()
确定的长度? - Joel Fischer[myData appendBytes:&myInteger length:sizeof(myInteger)];
这个链接更完整,涉及字节序:
char[]
。 - user166390