c - 核心转储分段错误 - 访问不在地址 0x0 的映射区域内
问题描述
所以我在尝试运行我的程序时遇到了一个奇怪的错误(你在那里看到的函数以及 Node 和 LinkedList 都在一个单独的文件中并且可以正常工作。显然这里有一些指针正在运行,我真的会感谢一些帮助修复我的核心转储错误!
这是我编写的文件中的代码:
void insertion_sort(LinkedList *list, int (*compare)(void *, void *)) {
LinkedList *sorted;
sorted = initialise_linked_list();
append_linked_list(sorted, list->head->data);
remove_head_linked_list(list);
while(list->tail != NULL){
Node *b;
b = initialise_node();
sorted->head = b;
while(b){
int num;
num = strcmp(list->head->data, b->data);
if(num < 0){
prepend_linked_list(sorted, list->head->data);
remove_head_linked_list(list);
}
b = b->next;
}
if(!b){
append_linked_list(sorted, list->head->data);
remove_head_linked_list(list);
}
}
free_linked_list(list);
print_linked_list(sorted, print_string);
}
解决方案
推荐阅读
- javascript - 在简单的 vue 项目中设置 vue-mathjax
- kubernetes - Kubernetes环境中的API网关
- ios - 如何使用 NSOperation 或 GCD 立即执行所有延迟操作?
- swift - 添加自定义字体作为字体类型 SwiftUI 的扩展
- python - 即使在安装 TeX 包之后,通过 LaTeX 将 .ipynb 转换为 pdf 也会出现此错误
- mysql - 需要使用mysql连接来自4个表的数据
- json - 使用 double 作为数据类型构造 Json 值
- flutter - Flutter:如何使用 CustomPainter() 实现这种自定义设计?
- c++ - QVBoxLayout 大小相同但小部件不同
- ruby-on-rails - 使用单一入口点将 Spring 与 Rails 连接起来