所以,我一直在考慮一個包含結構限制,在源結構定義
我必須定義說,一個源文件結構,我無法修改頭typedef的頭文件
這對我創建的任何這些結構施加了什麼樣的限制?
在我的頭文件我有
typedef struct tldnode TLDNode;
在我的源文件,我有
struct tldnode
{
int count;
char *tld;
TLDNode *left;
TLDNode *right;
};
我跑的時候我的程序,並使用GDB我在的點發現得到段錯誤故障我無法打印任何TLDNode成員的值,因爲我無法訪問內存位置
這是與結構定義方式相關的,就像我在頂部提到的那樣,或者可能是別的東西?
一個奇怪的說明,TLDNode指針的存儲位置是相同的位置,作爲第一個成員(詮釋計數),我敢肯定,這意味着我搞砸了某個地方內存分配,但不知道
什麼是'結構tldlist'的typedef您提供和'結構tldnode'結構定義你提供什麼關係呢? –
比較遺憾的是,只是一個錯誤,意思是TLDNode,固定的 – user1079404
您可以添加導致段錯誤代碼的樣本。有一個與你正在嘗試,如果你想從源文件外部訪問節點的成員除了做沒有實際限制。 – Lohrun