Error : Invalid Allocation Size :·····Bytes 以及 abort() has been called

Posted 林兮

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Error : Invalid Allocation Size :·····Bytes 以及 abort() has been called相关的知识,希望对你有一定的参考价值。

把这两个Error放在一起,主要是因为在写代码的时候发现,他们有公共的错误。

 

(一)Invalid Allocation Size

主要是因为new分配内存出了问题,从直观翻译来看,应该是内存分配长度无效。

检查一下程序里面开辟动态内存的地方,代表长度的变量是否具有正确的值:

       可能有时候该变量未被初始化,此时很有可能就是一个随机的负值。

       可能该长度的值需要从文件中读取,要仔细检查一下读取文件的时候,读的时候各个量的值是否对应正确。

 

(二)abort() has been called

该Error一般分两个方面————开辟内存长度无效(非法)   、   指针访问内存无效(非法)

第一个方面同上,

           可能是在读文件的时候程序中各个量的值没有对应正确,导致程序连main函数都没进去就直接报了该错误;

           可能是,你的程序占用的内存太多了,堆栈内存不够,溢出了。

第二个方面就是非法的指针访问,可能程序在运行时指针越界了,你没注意到。

 

以上是关于Error : Invalid Allocation Size :·····Bytes 以及 abort() has been called的主要内容,如果未能解决你的问题,请参考以下文章

条纹支付:参数:错误:类型:invalid_request_error

重复句柄错误:error_invalid_handle

是啥让 cuLaunchKernel 因 CUDA_ERROR_INVALID_HANDLE 而失败?

WebDjango OAuth invalid_grant error

GetQueuedCompletionStatus 返回后发生错误,错误号为 ERROR_INVALID_NETNAME

linux driver error ------ ERROR: Kernel configuration is invalid