Вы можете использовать метод NSData
- (void)getBytes:(void *)buffer range:(NSRange)range
, чтобы получить байты в заданном диапазоне (после выделения правильного объема памяти, используя malloc), затем использовать
+ (id)dataWithBytes:(const void *)bytes length:(NSUInteger)length
создавать новые небольшие (1 байт) объекты данных, которые вы затем помещаете в массив.Однако, если вы просто извлекаете указатель на сами байты (используя [data bytes]), это дает вам указатель (вид массива в смысле C, не NSArray, но также может быть использован и гораздо более эффективен).