提示用户填写链接列表
Prompt the user to fill the linked list
我正在尝试通过遍历链接列表,然后用用户输入填充每个节点数据来填充已经创建的链接列表,但是由于某些原因,1040次后,它停止询问其他值。但是,假设我有1000号尺寸的链接列表,它可以正常工作,但对于1040的尺寸,它不会提示用户。每次生成随机的1100个元素时,我都不会输入价值。
inline void myArray<T>::init() {
Node<T>* temp = head;
T input;
while(temp!=NULL) {
cin >> input;
temp->data = input;
temp = temp->next;
}
}
如果我做这样的事情,它的工作正好无关紧要。链接列表的大小是什么..
inline void myArray<T>::init() {
Node<T>* temp = head;
while(temp!=NULL) {
temp->data = 5;
temp = temp->next;
}
}
所以,现在我认为错误与采集输入有关
我不确定"继续失去头"的意思。但是,当您写" head = temp;"时,您正在将头节点重新分配到temp。但是,temp->下一行分配了上一行。因此,您可能希望检查您的作业声明,以确保您的工作确实是您想要的。希望会有所帮助。
我相信,Wheather头是否为null,您应该设置temp->next = head
。或者,新节点和现有节点之间没有链接。它不能妥协链接列表。
inline myArray<T>::myArray(int size, T value) {
setSize(size);
for(int i = 0;i<size;i++) {
Node<T>* temp = new Node<T>();
if(i==size-1) {
temp->data = 555555555; //set a different value to distinguish between head and other node
temp->next = 0;
} else {
temp->data = 0;
temp->next = 0;
}
temp->next=head;
head=temp;
}
}
相关文章:
- 从链接列表c++中删除一个项目
- 读取文件的最后一行并输入到链接列表时出错
- 下面是我为检测链接列表中的循环而制作的代码
- 有人能帮我处理这个链接列表吗?C++
- C++ 创建包含链表和字符串的对象的链接列表时出错
- 你能检查一下为什么在这个代码中从链接列表中删除项目不起作用吗
- 为什么它只打印双链接列表的第一个值,而我的程序却崩溃了
- 链接列表运算符重载没有打印出我想要的内容
- 链接列表在 cpp 中包含不同的对象类
- 创建一个棋盘格或"Interweave"两个链接列表。IE 更改两个链表的指针
- 如何在构建链接列表时调整头、尾指针
- Shared_ptr双链接列表内存泄漏
- 为什么每当我尝试运行此链接列表删除功能时都会收到分段错误错误?
- 在链接列表中查找元素 - C++
- 删除链接列表中剩余的最后一个节点
- 只有我的"链接列表"中的第一个节点正在打印
- 避免在使用链接列表从 deque 中删除最后一个节点时出现内存泄漏
- C++ 分段错误:11 错误,同时编码将两个数字相加的链接列表
- 如何在C / C++中正确实现链接列表而不会使程序崩溃
- 将元素插入链接列表