リストのリストがある場合
typedef Struct b {
int b;
Struct b *next;
}B;
typedef Struct a {
int a;
Struct a *next;
B *link;
}A;
そして、このスキームに従ってデータ構造を開発すると..
Aノード間のBのすべてのノードを追跡するために、Bのヘッドとしてダブルポインターを使用します。したがって、realloc を使用してポインターにより多くのデータを与えると、ヘッド内で以前に割り当てられたデータを失うことはありませんよね?
for(i=0;i<n_of_B_lists;i++)
*head_b[i]=realloc(*head_b[i],sizeof(B *)*1); //1 is for 1 pointer to the new B list