LINUX.ORG.RU

    tab_reg[0]  = *((unsigned short int *)&k  + 0);
    tab_reg[1]  = *((unsigned short int  *)&k + 1);
    tab_reg[2]  = *((unsigned short int  *)&b + 0);
    tab_reg[3]  = *((unsigned short int  *)&b + 1);

получил предупреждение warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] tab_reg[0] = *((unsigned short int *)&k + 0);

И программа падает. Как правильно написать преобразование в qt? ^

anonymous
()
Ответ на: комментарий от anonymous

Не вкурил.

Берем указатель на k
Преобразуем его к типу указатель на unsigned short int
Прибавляем к адресу 1
Разименовываем указатель.
Вроде так читается написанное во второй строке?

Niore
()

и если ты про qobject_cast клонишь, то оно не подойдет, так как только для наследников QObject-ов

xionovermazes
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.