我在NSData文件中有一个方法。
- (void)getBytes:(void *)buffer;
但是当我使用这种方法时......
const uint8_t bytes [kStreamChunkSize];
[chunk getBytes:&bytes];
然后它给出了这个错误
将'const uint8_t(*)[kStreamChunkSize]'发送到'void *'类型的参数会丢弃限定符
如何解决此错误。请帮帮我。
答案 0 :(得分:0)
它丢弃了const
限定符,这是一个问题。 getBytes:
通过将它们写入传入的数组来获取字节。但是,您不能写入const
字节的数组(这样做会调用未定义的行为),这就是const
的含义。将数组的声明更改为
uint8_t bytes[kStreamChunkSize];
此外,不要将指针传递给数组 - 如果你只是在没有&
运算符的情况下使用它的名字,那么无论如何它都会衰变为指向它的第一个元素的指针。