- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用单独的链接冲突解决方案来实现哈希表,但我遇到了问题。这是我的代码(稍微修改以简化,但错误仍然相同):
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <fstream>
#include <cstring>
#include <string>
using namespace std;
int ascii(char character)
{
return character;
}
int hashFunction(string word, int num)
{
char* str = new char[word.length() + 1];
strcpy(str, word.c_str());
return ((3 * ascii(str[0]) + 5 * ascii(str[1]))) % num;
}
typedef struct tab
{
string data;
struct tab* next;
}Node;
typedef struct link
{
Node* head;
Node* tail;
}List;
List* createList()
{
List* list = new List();
if (list)
{
list->head = NULL;
list->tail = NULL;
}
return list;
}
void insert(List* list, string data)
{
//if list is empty
if (list->head == NULL) //!!!!!!!!!!!!!!!!ERROR OCCURE HERE !!!!!!!!!!!!!!!
{
list->head = new Node();
list->head->data = data;
list->head->next = NULL;
list->tail = list->head;
}
//if list already contains some data
else
{
list->tail->next = new Node();
list->tail->next->data = data;
list->tail = list->tail->next;
list->tail->next = NULL;
}
}
int main(int argc, char* argv[])
{
int size = 8; //Size of hash table (number of indexes)
List* table[12];
string A[8] = { "hello","world","car","notebook","science","starwars","lollypop","anything" };
//Insert elements from array A into a hash table
int index;
for (int i = 0; i < size; i++)
{
index = hashFunction(A[i], size);
if (table[index] == NULL)
table[index] = createList();
insert(table[index], A[i]);
}
return 0;
}
当我运行 .exe 文件(或从 cmd 启动)时,程序以 app.exe 已停止工作的消息结束。我尝试调试程序并得到了这个: http://imgur.com/a/yOhRV
谁能帮我解决这个问题?我发现问题一定出在 insert() 函数中,可能在条件中,但我不知道出了什么问题。
最佳答案
你取消引用一个指针而不检查它:if (list->head == NULL)
...
你在这里做的是获取 list
并检查它指向的值是否为 NULL
,但是因为你还没有检查 if (list )
那么 list == NULL
可能会在取消引用时导致段错误
关于C++ 程序无缘无故结束? (哈希表),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43976915/
我正在安装这个程序:THERMUS ,据我所知应该安装正常。我/我通过 ubuntu 控制台安装这个程序。但是当我运行 make all 时,我收到了这条消息: make: ***No rule to
我正在渲染一个简单的 sass 文件并收到以下警告: This selector doesn't have any properties and won't be rendered. ╷ 14
我不明白为什么文本不会与 div 的中间对齐,我认为这是导致页面底部出现空白的原因,我希望文本位于中间(高度)页脚的(两个 div 我都有两个强制文本的每个部分到页面的边缘) HTML:
我正在尝试为 android 创建基本的音乐播放器。对我来说一切似乎都很好,但是当我试图在我的手机上运行应用程序时。它说它停止了。我无法解决那个问题。感谢您的任何帮助。我试图在应用程序停止时查看“Lo
在我的 LoginProvider 中,我使用了一个函数来执行登录并将创建的 session 作为 promise 返回。 @Injectable() export class LoginProvid
我在 Google Cloud Platform 上运行 Dataflow-Jobs,我收到的一个新错误是“Workflow failed”,没有任何解释。我得到的日志如下: 2017-08-25
我已经阅读了无数关于这个错误的主题,但是没有一个和我有同样的问题。 我得到了 E/MediaPlayer: 错误 (-19, 0) E/MediaPlayer: 错误 (-19,0) 错误,然而,音乐
这个错误或我缺乏知识或其他东西真的开始困扰我。我正在开发一个 Grails 应用程序,并且在我的工作过程中随机出现 Grails 提示一些导入,说无法解析类名。它在一个保存前工作!我没有对项目的基础设
我为此失去了头发!我不断收到“发送后无法设置 header ”错误,我确定我没有像在其他问题中看到的那样调用 Next()。我的代码一直在工作,直到我尝试进行一些重构,我没有改变这个类的任何东西,所以
我是一名优秀的程序员,十分优秀!