Указатель доступа к структуре того же типа? - PullRequest
0 голосов
/ 09 февраля 2019

Я пытаюсь создать связанный список и мне нужен указатель, указывающий на следующий элемент - также хранятся данные и указатель на следующий элемент списка.

Будет ли это правильный подход икак бы я получить доступ к этому типу указателя через main ()?

struct Data {

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

struct Node {

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

1 Ответ

0 голосов
/ 09 февраля 2019

Ваш подход верен, но в вашем коде есть некоторые ненужные вещи.

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;
...