Приветствую.
Описание проблемы:
в хедере есть описание структуры
Код
typedef struct _t_haffman_tree_encode_ {
uint32 count;
struct _t_haffman_tree_encode *left;
struct _t_haffman_tree_encode *right;
bool flag;
} tHaffmanTreeEncode, *pHaffmanTreeEncode;
кусок кода:
Код
pHaffmanTreeEncode pEncode, pRoot;
uint32 min1, min2;
...
pEncode = malloc( // Выделить память
...
pEncode[j].left = &pEncode[min1];
pEncode[j].right = &pEncode[min2];
Вопрос:
При компиляции на строки
pEncode[j].left = &pEncode[min1];
pEncode[j].right = &pEncode[min2];
выдается варнинг: "assignment from incompatible pointer type". Пробовал явное преобразование типа - не помогает ((pHaffmanTreeEncode)&pEncode[]).
Подскажите пожалуйста, как избавиться от варнинга и если не сложно объясните, почему компилятор ругается.
Спасибо.