Мне нужно преобразовать QByteArray QImage в unsigned char *.
Я делаю это по:
QByteArray data;
QBuffer buffer(&data);
buffer.open(QIODevice::WriteOnly);
convImage.save(&buffer, "PNG");
buffer.close()
unsigned char *data_image = (unsigned char *)malloc(data.size());
memcpy(data_image, reinterpret_cast<unsigned char *>(data.data()), (unsigned int)data.size());
Но результат data_image по сравнению с QByteArray изображения выглядит так:
data = (QByteArray of Image)
data_image = неподписанный символ * из данных
Я думаю, что это не полностью скопировано. Мне нужны данные без знака * для внешней функции DLL.