吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1059|回复: 1
收起左侧

[已解决] C 运行无结果,断点提示堆损坏

[复制链接]
ing 发表于 2020-3-5 16:06
本帖最后由 ing 于 2020-3-5 16:44 编辑



我的运行没有任何结果的输出
捕获2.PNG


我很确定我的代码没错,当我断点调试按下F11时发生了下图
捕获.PNG

#include<malloc.h>
#include<stdio.h>
#include<stdbool.h>

#define VType int
#define Hash_Size 20
#define NULL_KEY -1

typedef struct
{
        int *elem;
        int length;
}HashTable;

void init(HashTable *t, int length)
{
        t->elem = (int*)malloc(Hash_Size*sizeof(int));
        t->length = length;
        for (size_t i = 0; i < Hash_Size; i++)
        {
                t->elem[i] = NULL_KEY;
        }
}

int hash(int a)
{
        return a % 13;
}

void insert(HashTable **t,int a)
{
        int hashAddress = hash(a);
        while ((*t)->elem[hashAddress] != NULL_KEY)
        {
                hashAddress = (hashAddress + 1) % 13;
        }
        (*t)->elem[hashAddress] = a;
}

int search(HashTable *t, int a)
{
        int hashAddress = hash(a);
        while (t->elem[hashAddress] != a)
        {
                hashAddress = (hashAddress + 1) % 13;
                if (hashAddress == hash(a))
                {
                        return -1;
                }
        }
        return hashAddress;
}

int main(int argc, char* argv[])
{
        HashTable *t = (HashTable*)malloc(Hash_Size*sizeof(HashTable));
        init(t,10);
        int arr[Hash_Size] = { 12,23,45,57,20,03,78,31,15,36 };
        for (size_t i = 0; i < t->length; i++)
        {
                insert(&t,arr[i]);
        }

        int result = search(t, 12);
        if (result != NULL_KEY)
        {
                printf("在哈希表的位置是:%d",result);
        }
        else
                printf("哈希表不存在此元素");

        free(t->elem);
        free(t);
}

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| ing 发表于 2020-3-5 16:44
解决了,重新打开编译器运行。。。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-26 20:47

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表