如何在运行时或编译时初始化char*** p
?
答案 0 :(得分:6)
使用空指针初始化
char*** p = 0; //or NULL, or nullptr
另一个选项
char x;
char *y = &x;
char **z = &y;
char ***p = &z;
分配内存?
char *** p = new char**[dim1];
for(int i = 0; i < dim1; ++i)
{
p[i] = new char*[dim2];
for(int j = 0; j < dim2; ++j)
{
p[i][j] = new char[dim3];
}
}
答案 1 :(得分:3)
嗯,这是一个例子:
char A = 'A';
char *pA = &A;
char **ppA = &pA;
char ***p = &ppA; // Now `***p` will dereference all the way back to 'A'