c - 声明动态多维指针

标签 c pointers

是否可以在运行时声明一个 N 维指针?比如,if [N = 2, **p], [N = 3, ***p], [N = 4, ****p] 等等。如果是,怎么办?

最佳答案

可能这不是您想要的,但您可以定义通用的 void * 指针,然后根据 N 转换它们。

丑陋的例子:

void *genericPtr;
if (1 == N) {
    int *ptr = (int *)genericPtr;
    // your code here
} else if (2 == N) {
    int **ptr = (int **)genericPtr;
    // your code here
}

关于c - 声明动态多维指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51416854/

相关文章:

android - 函数 'lseek64' 的隐式声明在 C99 中无效

C程序对数字进行四舍五入,四舍五入到小数点后第二位

c - 纯 C 中的 SGML 解析器

使用指针创建二维数组

c++ - 删除后访问迭代器导致崩溃

c++ - 我在阵列中的什么位置?

c - C 中的电话号码验证

c++ - "#include&lt"和#include之间的区别”

无法重新迭代指针数组

arrays - 下标值既不是数组也不是指针错误