使用New和Delete with Dynamic结构的指针数组

时间:2018-02-07 05:08:54

标签: c++ arrays pointers memory segmentation-fault

我目前正在使用以下代码:

student_info **array;
array = new student_info*[size];
for(int i = 0; i < 19; i++)
{
    array[i] = new student_info[size];
}
for(int i = 0; i < 19; i++)
{
    delete[] array[i];
}
delete[] array;

“student_info”是结构,“array”是类型结构的指针数组。

代码编译;但是,当我尝试访问数组内的项时会导致segfault核心转储。

访问代码:

in_s >> array[i] -> first;

此代码也在for循环中使用new。假设in_s是一个instream对象,首先是结构的一部分。

我的内存分配哪个部分错了? “size”变量是19,但我不确定“size”是否应该在内部数组内存分配中使用。

谢谢!

0 个答案:

没有答案