gpt4 book ai didi

c++ - 访问冲突 : Bad pointer

转载 作者:行者123 更新时间:2023-11-28 08:04:03 25 4
gpt4 key购买 nike

好吧,我想不通这个。调试器没有提供有关此特定异常的太多信息。

这里是被调用的函数:

NC_LIBEXPORT(VOID) ncKeyExpand(unsigned char* key, int initlen)
{
int abspos = initlen;
int curkpos = 0;
do
{
key[abspos] = key[curkpos];
++abspos;
++curkpos;
if(curkpos >= initlen)
curkpos = 0;

} while (curkpos < NC_KEY_MAX_LENGTH);
}

并且访问冲突发生在此处的第二行:

unsigned char apkey[NC_KEY_MAX_LENGTH];
ncKeyExpand(&apkey[0], NC_PRIV_KEY_LENGTH);

关于为什么会发生这种情况的任何见解?我所做的只是修复它。

Unhandled exception at 0x776e7094 in Test Application.exe: 0xC0000005:

这是确切的错误。

Access violation.

当指针指向不可访问的地址时,例如它已被释放或超出范围,或者为 null 等,这不是访问冲突吗?如果是这样,为什么要在这里提出?字符数组就在那里

最佳答案

您的数组声明为长度 NC_KEY_MAX_LENGTH这意味着您可以从 apkey[0] 访问它的位置thr' apkey[NC_KEY_MAX_LENGTH-1] .

如果你看看你的函数

do
{
key[abspos] = key[curkpos];
++abspos;

你正在访问超出你的数组大小..

关于c++ - 访问冲突 : Bad pointer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10670006/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com