struct A { int a; }; void main() { int* a = new int[4]; float* b = new float[4]; bool* c = new bool[4]; A* d = new A[4]; int** e = new int*[4]; float** f = new float*[4]; bool** g = new bool*[4]; A** h = new A*[4]; a[2] = 243; b[2] = 23.5; c[2] = true; d[2].a = 64560; e[2] = &a[2]; f[2] = &b[2]; g[2] = &c[2]; h[2] = &d[2]; h[2]->a += 2; (*h[2]).a += 2; test(a[2]); test(b[2]); test(c[2]); test(d[2].a); test(*e[2]); test(*f[2]); test(*g[2]); test((*h[2]).a); }