我是 C++ 的新手,当我删除指向整数数组的指针时,我的程序出现了这个错误。这是我的部分代码。
int *list=new int[20];
ifstream in;
in.open(xxx);
for(a = 0; a < 10; a++){
in >> *list
list++;}
delete[] list;
list = NULL;
最佳答案
list++
删除列表;
?
您需要返回并再次查看指针等。通过执行 list++
,您正在更改 list
的值,因此当您说 delete [] list
时,该值不是您分配的值。
关于c++ - 错误在 `./2' : free(): invalid pointer: 0x000000000096044c *** Aborted (core dumped),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35471820/