C++ 为什么要在链表中声明指向同一结构的指针

C++ 为什么要在链表中声明指向同一结构的指针,c++,struct,linked-list,C++,Struct,Linked List,这是一个链表的创建。我的问题是,为什么我们要声明同一个结构的指针。e、 g节点*下一步。如果我们要有一个整数的链表,我们可以只使用int*next和int*prev而不是使用Node*next链表中的每个元素不仅包含数据(int),而且还包含指向下一个元素的指针吗(在双链接列表中,就像你有一个指向前一个元素的指针一样)。没有它,你无法构建一个超过两个元素的列表。链接列表中的每个元素不仅包含数据(int,在你的例子中),还包含指向下一个元素的指针(在双链接列表中,如您所拥有的,也有一个指向上一个元

这是一个链表的创建。我的问题是,为什么我们要声明同一个结构的指针。e、 g节点
*下一步
。如果我们要有一个整数的链表,我们可以只使用
int*
next和
int*prev
而不是使用Node
*next
链表中的每个元素不仅包含数据(
int
),而且还包含指向下一个元素的指针吗(在双链接列表中,就像你有一个指向前一个元素的指针一样)。没有它,你无法构建一个超过两个元素的列表。

链接列表中的每个元素不仅包含数据(
int
,在你的例子中),还包含指向下一个元素的指针(在双链接列表中,如您所拥有的,也有一个指向上一个元素的指针)。如果没有它,您就无法构造一个长度超过两个元素的列表。

一个结构用于将一个公共内存块中的变量列表分组,这有助于使用单指针访问元素。在您的问题中,您是说为什么我们不只使用int*下一步如果我们使用int*无法将其他元素分组,您也无法保存值和l同时使用墨水。

一个结构用于将一个公共内存块中的变量列表分组,这有助于使用单个指针访问元素。在你的问题中,你是说为什么我们不只使用int*下一步如果我们使用int*不能对其他元素分组,也不能同时保存值和链接。

将结构想象为c具有存储在其中的对象(Int、chars..)的容器。要访问特定容器中的对象,需要首先找到容器,因此需要容器的地址(即结构的地址)。
考虑到以下结构

struct Node
{
int value;
Node *next;
Node *prev;
};
struct Node
中有一个整数和一个指向整数的指针。当为第一个结构分配内存时,它将像一个容器一样容纳一个整数和一个指向整数的指针。在这种情况下,链将以第一个结构本身结束,因为您没有指向第二个结构(从第一个结构中),它可以保持指向第三个结构的指针,依此类推。

如果要将此结构链接到同一类型的另一个结构(实质上是创建链接列表),您将需要一个指针,该指针可以指向同一类型的另一个结构。因此,在将用于链表的任何结构中都需要一个指向同一类型结构的指针。

将结构视为具有对象(int、chars..)的容器存储在容器中。要访问特定容器中的对象,首先需要找到容器,因此需要容器的地址(即结构的地址)。
考虑到以下结构

struct Node
{
int value;
Node *next;
Node *prev;
};
struct Node
中有一个整数和一个指向整数的指针。当为第一个结构分配内存时,它将像一个容器一样容纳一个整数和一个指向整数的指针。在这种情况下,链将以第一个结构本身结束,因为您没有指向第二个结构(从第一个结构中),它可以保持指向第三个结构的指针,依此类推。

如果要将此结构链接到同一类型的另一个结构(实质上是创建链接列表),您需要一个指针,它可以指向同一类型的另一个结构。因此,在用于链接列表的任何结构中,都需要一个指向同一类型结构的指针。

您如何从该int*链接到下一个项?我根本不理解这个概念。您能详细说明一下吗?可能是这样的有帮助。给自己画一个链表的图表。如果你只有一个指向下一个整数的指针,那么你会把指向下一个整数的指针存储在哪里?在这里,让我帮你谷歌一下:你会如何从这个整数链接到下一个项目*那么?我根本不理解这个概念。你能详细说明一下吗?这会很有帮助的。给自己画一个dia如果你只有一个指向下一个整数的指针,那么你会把指向下一个整数的指针存储在哪里呢