構造体のメンバの1つに、別の構造体を指し示すポインタ配列を作るのは、

struct node{
 struct node **link;
};

でいいんでしょうか?

また、これで

 struct node *a,*b;
 a=NULL;
 b=(struct node*)malloc(sizeof(struct node));

として、aとbを線形につなぎたいのですが、

 b->link[0]=a;

とすると、エラーが出てうまくいきません。
どうすればよいでしょうか?
解りにくい説明ですみません。