通过C中的双指针访问结构元素

时间:2014-01-28 06:05:18

标签: c pointers linked-list singly-linked-list double-pointer

我正在使用结构实现链接列表。我有一个结构 -

typedef struct llist node;
typedef node *nodeptr;
struct llist
{
    int data;
    nodeptr next;
};

现在让我说我声明一个变量nodeptr *ptr;。如何使用data

访问成员nextptr

1 个答案:

答案 0 :(得分:3)

你尊重第一个指针,然后是第二个指针。

要访问数据,接下来要在结构语句中使用

(*ptr)->data = 5;
(*ptr)->next = temp;
由于->的优先级高于*,因此需要在ptr周围使用括号。

-> 相当于写 *. (例如ptr->data*ptr.data相同)。