struct LNode* 是一个指针类型,为什么它有*
时间: 2023-08-09 22:09:39 浏览: 90
在C语言中,*用来表示一个指针类型。`struct LNode*`表示指向`struct LNode`类型的指针。在定义一个指针变量时,需要在变量名前面加上`*`,以指示该变量是一个指针类型。例如,下面的语句定义了一个指向`struct LNode`类型的指针变量p:
```
struct LNode* p;
```
这里的`*`表示`p`是一个指针类型,它指向`struct LNode`类型的数据。在使用指针变量时,需要通过`*`来访问指针指向的数据,例如:
```
p->data = 10; // 将p指向的struct LNode类型的数据的data成员设置为10
```
相关问题
struct LNode *是一个指针类型,为什么它有*
在C语言中,*用来表示一个指针类型。struct LNode *表示指向struct LNode类型的指针。在定义一个指针变量时,需要在变量名前面加上*,以指示该变量是一个指针类型。例如,下面的语句定义了一个指向struct LNode类型的指针变量p:
```
struct LNode *p;
```
这里的*表示p是一个指针类型,它指向struct LNode类型的数据。在使用指针变量时,需要通过*来访问指针指向的数据,例如:
```
p->data = 10; // 将p指向的struct LNode类型的数据的data成员设置为10
```
struct LNode ** ' to 'struct LNode *'
将`struct LNode **`类型的指针转换为`struct LNode *`类型的指针,表示从一个指向指向`struct LNode`的指针的指针(二级指针),转变为直接指向`struct LNode`的指针(一级指针)。这样做通常是为了访问存储在一维数组或者链表中的结构体节点。
例如,在链表数据结构中,如果有一个`struct LNode **pList`这样的双指针,它实际上是一个指针列表,每个元素都指向一个`struct LNode`。当你想要通过这个二级指针获取单个节点时,可以做类似下面的操作:
```c
struct LNode *singleNode = *pList; // 解引用一次,得到一级指针
```
这之后就可以直接操作`singleNode`了,就像它是一个普通的`struct LNode`指针一样。
阅读全文