この .c ファイルでこのコードを見ました。
struct node {
Item data;
struct node *next;
};
struct stack_type {
struct node *top;
};
2 つの構造体を作成する利点は何ですか?
この .c ファイルでこのコードを見ました。
struct node {
Item data;
struct node *next;
};
struct stack_type {
struct node *top;
};
2 つの構造体を作成する利点は何ですか?
スタック全体と単一ノードを区別するために、コードがより明確になる場合があります。
彼らはスタックの実装を検討しています。各ノードには次のノードへのポインターが含まれていますが、各ノードにはスタックの最上位へのポインターは含まれていません。スタック構造体だけがスタックの一番上へのポインターを格納します。スタック内のすべてのノードが最上位を指している場合、プッシュまたはポップごとに各ノードを変更する必要があります。不要なトップ ポインターもメモリの無駄になります。
このようにして、スタック全体で機能する関数を強調表示できます。プロトタイプはのインスタンスを期待しますstruct stack_type
- あなたは(おそらく)struct node
スタックの真ん中から渡さないでしょう。