写出c++中list遍历的方式
时间: 2023-11-25 10:08:34 浏览: 109
C语言中没有内置的list数据结构,需要自己实现。一种常见的实现方式是使用指针来实现链表,遍历时可以使用while循环和指针移动来实现遍历操作。以下是一个示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
typedef struct Node {
int value;
struct Node *next;
} Node;
void traverse(Node *head) {
Node *p = head;
while (p != NULL) {
printf("%d ", p->value);
p = p->next;
}
}
int main() {
Node *head = (Node*)malloc(sizeof(Node));
head->value = 1;
head->next = NULL;
Node *node2 = (Node*)malloc(sizeof(Node));
node2->value = 2;
node2->next = NULL;
head->next = node2;
Node *node3 = (Node*)malloc(sizeof(Node));
node3->value = 3;
node3->next = NULL;
node2->next = node3;
traverse(head);
return 0;
}
```
在上述代码中,定义了一个Node结构体表示链表中的每个节点,其中value表示节点的值,next表示指向下一个节点的指针。traverse函数实现了链表遍历,从头节点开始依次遍历每个节点,输出节点的值。在main函数中,手动创建了一个简单的链表,并调用了traverse函数输出链表的值。
阅读全文