C++有问题的函数,数组到列表
C++ problematic function, Array to List
我有来自编程类的代码:
void ToList(List *first, int *arr, int n) {
List *p = first;
for(int i=0; i<n; i++) {
p->x = arr[i];
if (p->next != NULL) p = p->next;
}
}
我调用它是为了将数组元素传输到列表:
int main() {
const int N = 10;
int m[N] = {5, 8, 1, 7, 2, 6, 9, 4, 0, 3};
List *first = NULL;
ToList(first, m, N);
PrintList(first);
我遇到了"分段错误" - 程序以退出代码 139 完成。出了什么问题,如何解决?
看起来您取消引用了NULL
指针:
在main
:
List *first = NULL;
在ToList
:
List *p = first; // first = NULL
...
p->x = arr[i]
因此,您需要首先分配列表。
相关文章:
- C++如何生成std::数组列表
- GTEST : 如何将数组列表作为参数传递到 ValuesIn of INSTANTIATE_TEST_CASE_P?
- 如何通过 cython 将 numpy 数组列表传递给 C++
- 如何删除数组列表中的元素
- 如何将移动平均线写入数组列表类?
- 如何使用pybind传递numpy数组列表
- 继承向量/数组/列表并更改其大小
- 内存泄漏 C++ 数组列表
- 如何使用一维数组列表初始化二维数组
- 从数组列表中的字符串迭代器获取 int dat<struct>
- 数组列表、行搜索和气泡排序.作业C++
- 是否可以使用三元运算符"?"在 C/C++ 中填充数组列表?
- 从我的c++应用程序调用c#dll(解析XML文件),将数组/列表返回给c++
- (C++)用于检查对象是否在向量/数组/列表/.中的模板
- C#中数组/列表的子集迭代器,没有屈服
- 链接数组列表实现
- 如何将多个位图包含在全局数组列表中
- C++:如何将数组的元素推送到数组列表中
- 视觉 我正在使用C++用于一些基本图形。我想知道如何读取顶点、索引和面以及如何在数组列表中使用面?
- C++ 将文件读入数组/列表/向量