【发布时间】:2012-04-03 17:57:57
【问题描述】:
我正在解决一个使用指针算法的问题,我发现这个小sn-p 的代码可以工作。我不明白它到底在做什么。对我来说,它看起来像是将缓冲区的地址 + ix3 的值分配给数组元素 a[i]。我不知道为什么这与我的程序有关。谁能告诉我这个循环到底发生了什么?
int *buffer=new int[5*3];
for (i=0;i<5;i++)
a[i] = buffer+i*3;
【问题讨论】:
-
它以什么方式“工作”?有什么不寻常的?
-
你应该添加变量a的类型。它应该是指向整数的指针数组。记住这一点,它可能有助于了解更多的程序。如果 a 的类型不是整数指针数组,您可能会显示更多代码。
-
@harper a 在变量列表中定义为 int** a;并将在程序后面用作二维数组。
标签: c++ arrays pointers memory-management