我收到此警告,警告:赋值使用整数而不是强制转换,关于下一个代码,我无法理解为什么。
unsigned char *dataBitmap = [self bitmapFromImage:image];
unsigned char *dataArray[(int)image.size.height][(int)image.size.width * 4];
for (int i = 0; i < image.size.width * image.size.height * 4; i += 4) {
int aux = (int) i / 4;
int row = (int)(aux / image.size.width);
int column = i % ((int)image.size.width * 4);
// Alpha.
dataArray[row][column] = dataBitmap[i];
// Red.
dataArray[row][column + 1] = dataBitmap[i + 1];
// Green.
dataArray[row][column + 2] = dataBitmap[i + 2];
// Blue.
dataArray[row][column + 3] = dataBitmap[i + 3];
}
感谢阅读。
答案 0 :(得分:0)
unsigned char *dataArray[(int)image.size.height][(int)image.size.width * 4];
应该是
unsigned char dataArray[(int)image.size.height][(int)image.size.width * 4];
阅读错误消息,并思考!它表示你以某种方式从一个整数(或类似的东西)制作一个指针。这意味着你使用了一个指针,你应该使用一个整数,或者反过来。从头到尾阅读代码,使用指针和整数。