指向相同类型结构的访问指针?

时间:2019-02-08 23:44:05

标签: c++ pointers linked-list structure

我正在尝试构建一个链表,并且需要一个指向下一个元素的指针-还存储数据和一个指向列表下一个元素的指针。

这是正确的方法吗,我将如何通过main()访问这种类型的指针?

struct Data {

    int data = 1;
};
typedef struct Data Data;

struct Node {

    Data d;
    struct Node *dir_next; 
};
typedef struct Node Node;

1 个答案:

答案 0 :(得分:1)

您的方法是正确的,但是您的代码中有一些不必要的东西。

struct Data {

    int data = 1;
};

struct Node {

    Data d;
    Node *dir_next; 
};

这就是您所需要的,这是创建链接列表的标准方法。

要访问列表元素,您可以执行以下操作:

Node current;
//build your list here
Node next = *(current.dir_next);

或使用指针

Node* current;
//build your list here
Node* next = current->dir_next;