在链表中的第 n 位插入显示分割错误
Insertion at n'th place in Linked List showing Segmentation error
void Insert(int data, int n){
Node* temp1 = new Node();
temp1 -> data = data;
temp1 -> next = NULL;
if(n == 1){
temp1 -> next = head;
head = temp1;
return;
}
else{
Node* temp2 = head;
for(int i; i< n-2; i++){
temp2 = temp2 -> next;
}
temp1 -> next = temp2 -> next;
temp2 -> next = temp1;
}
}
我对此遇到分段错误,无法弄清楚出了什么问题。
void Insert(int data, int n)
{
Node* add = new Node(); // Node to be added
add -> data = data;
add -> next = NULL;
if(n == 1)
{
add -> next = head;
head = temp1;
return;
}
else
{
Node* temp2 = head;
Node* prev = NULL; //Previous pointer
for(int i=0; i< n-2; i++)
{
if(i == n) // n is required Node where we have to add it.
{
prev->next = add;
add->next = temp;
return;
}
else
{
prev = temp2;
temp2 = temp2->next;
}
}
}
}
你没有在for循环中初始化i。
for(int i; i< n-2; i++){
temp2 = temp2 -> next;
}
相关文章:
- 比较并显示使用最小值(a,b)和最大值(a、b)升序排列的4个数字
- 使用C++库在Android项目中修改gradle中的cmake参数,用于插入指令的测试
- C++,OpenCV,尝试显示图像时"OpenCV(4.3.0) Error: Assertion failed (size.width>0 && size.height>0)"此错误
- 有关插入适配器的错误。[错误]请求从 'back_insert_iterator<vector<>>' 类型转换为非标量类型
- 预处理器:插入结构名称中的前一个行号
- 在链表中的第 n 位插入显示分割错误
- 在将字符插入 2d 字符串时如何不显示空字符?
- C++ 矢量未显示我插入的任何值
- 为什么 C++ 中的分号在插入代码开头时不显示任何错误?
- 插入了 C++ 数组字符串数据,但在显示输出时不显示
- 简单树插入节点函数显示为空
- 超载预先插入操作员未显示正确的结果
- 如何将结构指针插入stl向量中并显示内容
- 红色黑树插入代码显示分割故障11
- 当插入第二个监视器时,全屏Direct3D9设备仅以本机分辨率显示
- 如何只插入数字和字母应该显示消息或其他内容
- 如何在禁用的MFC CEdit控件中显示插入符号
- 一个函数,它将显示使用插入排序对 c++ 进行排序的数组的内容
- CListCtrl 多次显示插入的项目
- 优先队列的插入和显示功能