基本的に 3 つのレベルの構造体があるバイナリ ツリーを作成しました。
typedef struct l {
char n[15];
struct l *next;
} List;
typedef struct {
char rname[20];
char lname[20];
List number;
} info;
typedef struct tree {
info thisnode;
struct tree *left;
struct tree *right;
} Tree;
そして、このコード行で
t->thisnode.number = t->thisnode.number.next;
タイトルに記載されているエラーが表示されます
通常、再帰的なデータ構造では、次の型が struct *l であるにもかかわらず、これらの型の代入が機能します。この場合、なぜ機能しないのか、誰かが私を助けてくれますか?
また、私は本能的に上記の行を
t->thisnode.number = t->thisnode.number->next;
しかし、私のコンパイラはそれをあまり好まないようです。