C++读取txt文件全部数据且头节点不存数据的单链表
时间: 2023-09-09 15:14:36 浏览: 87
可以使用C++中的fstream库来读取txt文件中的数据,然后逐个创建节点插入到单链表中。以下是一个示例代码:
```c++
#include <iostream>
#include <fstream>
using namespace std;
struct Node {
int data;
Node* next;
Node(int x): data(x), next(nullptr) {}
};
int main() {
Node* head = new Node(0); // 头节点不存数据
Node* cur = head;
ifstream infile("data.txt");
int num;
while (infile >> num) {
cur->next = new Node(num);
cur = cur->next;
}
infile.close();
// 输出单链表中的数据
cur = head->next; // 从第一个节点开始
while (cur) {
cout << cur->data << " ";
cur = cur->next;
}
// 释放单链表中的内存
cur = head;
while (cur) {
Node* tmp = cur;
cur = cur->next;
delete tmp;
}
return 0;
}
```
在这个示例代码中,我们首先创建了一个头节点,然后使用ifstream对象打开txt文件,并逐个读取文件中的数据,创建节点并插入到单链表中。最后,我们遍历单链表,输出其中的数据,并释放单链表中的内存。需要注意的是,我们在创建头节点时,将其data成员初始化为0,因为头节点不存储数据,只是作为单链表的入口。
阅读全文