我無法在目標c中創建此c結構。在目標c中使用c庫
typedef struct huffman_node_tag
{
unsigned char isLeaf;
unsigned long count;
struct huffman_node_tag *parent;
union
{
struct
{
struct huffman_node_tag *zero, *one;
};
unsigned char symbol;
};
} huffman_node;
我得到在聯盟類型的結束這個警告和結構類型的「無符號的字符符號變量」
warning: declaration does not declare anything
然後上面月底的時候我做這樣的事:
huffman_node *p = (huffman_node*)malloc(sizeof(huffman_node));
p->zero = zero;
我得到這個編譯錯誤:
error: 'huffman_node' has no member named 'zero'
爲什麼這不起作用?我錯誤地設置了這個嗎?有誰之前經歷過這個嗎?
代碼片段中沒有任何內容或錯誤提示缺少標題。 'struct'和'union'的所有成員都是內置的C類型。 – dreamlax 2009-12-20 20:20:23