У меня есть изображение, хранящееся в указателе на char, и я хочу использовать на нем функции ipp. Как создать образ Ipp8u* в ipp из этого указателя на char? это тяжелый расчет (конструкция)? Могу ли я сделать простой кастинг? Большое спасибо
О построении образа ipp
Ответы (1)
Да, все, что вам нужно сделать, это привести указатель:
Ipp8u *ipp_data = static_cast<Ipp8u*>(your_data);
или, если вы по какой-то причине предпочитаете приведения в стиле C:
Ipp8u *ipp_data = (Ipp8u *)your_data;
Как отмечено в документации Intel, Ipp8u
эквивалентно unsigned char
языка C — как минимум в типичной реализации, где CHAR_BIT == 8
. Это не обязательно, но я считаю, что это относится к большинству (если не ко всем) компиляторы/платформы, поддерживаемые Intel-IPP.
person
Jerry Coffin
schedule
08.05.2012
Интересно, почему они говорят
unsigned char
, а не uint8_t
, что более явно.
- person Mahmoud Al-Qudsi; 11.05.2012
@MahmoudAl-Qudsi: я могу только догадываться, что это потому, что
unsigned char
более распространен/широко известен, но я должен согласиться, что uint8_t действительно более точно соответствует описанию.
- person Jerry Coffin; 12.05.2012