我正在尝试编写一个代码来从 malloced 缓冲区创建 NSMutableData。我使用 freewhendone = YES
1)它在创建 NSData 后访问缓冲区时出错。(在下面代码中的 memset 中)
2)malloced 缓冲区指针和 [data bytes] 指针不同。
这些有什么解释吗?
UWORD8 *rgb_buffer = malloc(u4_stride * u4_height * 3);
NSMutableData *rgbData = [NSMutableData dataWithBytesNoCopy:rgb_buffer
length:(u4_stride * u4_height * 3)
freeWhenDone:YES];
memset(rgb_buffer, 0, (u4_stride * u4_height * 3));