指针的动态内存分配

时间:2018-11-20 15:29:13

标签: c++

Marks是2指针数组,指向int的指针。

已为此阵列分配了内存

数组每个条目的内存大小是指向int指针的大小

应该只有2个地址属于此数组。

当我通过Marks [4]访问数组标记的第5个元素的地址时,我显然不访问为该数组分配的内存地址。

我正在访问哪个内存地址?它是一个随机地址吗?是否存储了值?为什么编译器不发出警告?

标记数组的第5个元素的地址为:0x7269467374706563

int main(int argc, const char * argv[]) {
        int a = 10;
        int* ptr_a = &a;
        int** marks=new int*[2];
        marks = &ptr_a;

        std::cout << "PtR_a" << ptr_a[0] << std::endl;
        std::cout << "marks" << marks[4] << std::endl;

        return 0;

    }

0 个答案:

没有答案