我的AudioQueueBuffer
音频数据格式为void * const
。我想要我的编解码器的短数组(short *
)音频数据。
如何在Objective c中将void * const转换为Short * ???从无效到可能的短期类型?或者我必须使用像OSReadBigInt16
这样的字节顺序转换???如果是这样的转换样品?请帮我找到解决方案。
答案 0 :(得分:1)
是的,Objective-C就像C一样用于类型转换。这意味着如果您想将void *
指针解释为short *
指针,您需要做的就是:
(short *)voidPointer
如果字节的顺序不正确(即字节顺序不匹配),那么你也需要处理它 - 但是根据问题中的信息,无法判断是否存在这种情况。 / p>
答案 1 :(得分:1)
void*
是一种声明无类型指针的约定。这些指针需要重新解释作为指向某些数据类型的指针。它是否有效取决于您或API在void*
指针指向的地址处放置的内容:如果它是一个short
值的序列,没有间隙,则为{{1会起作用;否则,您可能需要执行其他转换。