Name: Anonymous 2012-09-02 0:12
Shouldn't this be working? I'm trying to point all three pointers to this new int array, but the address isn't right.
<code>void allocate(int a[], int * &x, int ** &y, int *** &z)
{
a = new int [ 5 ];
x = a;
y = new int*;
*y = a;
z = new int**;
*z = new int*;
**z = a;
return;
}
int main()
{
int arr[5];
int *ptrX;
int **ptrY;
int ***ptrZ;
// Allocate the dynamic memory
allocate(arr, ptrX, ptrY, ptrZ);
return 0;
}</code>
<code>void allocate(int a[], int * &x, int ** &y, int *** &z)
{
a = new int [ 5 ];
x = a;
y = new int*;
*y = a;
z = new int**;
*z = new int*;
**z = a;
return;
}
int main()
{
int arr[5];
int *ptrX;
int **ptrY;
int ***ptrZ;
// Allocate the dynamic memory
allocate(arr, ptrX, ptrY, ptrZ);
return 0;
}</code>