【问题标题】:On using pointer to access elements of a 3D array关于使用指针访问 3D 数组的元素
【发布时间】:2012-08-30 18:29:46
【问题描述】:

我有一个像这样声明的 3D 数组

unsigned char   ScalingList[3][2][64];

我需要使用另一个指针访问 ScalingLists 的元素,在这些行中

unsigned char (*pQM)[2][64];
pQM = &(ScalingList[0][0][0]);

然后像这样索引到 ScalingList 的元素中

pQM[i][j][k]

我知道我需要正确组合 ()、* 和 &,但我无法得到它。有人可以帮帮我吗..

【问题讨论】:

  • @Avi Berger:你是对的!删除以防误解。

标签: c++ pointers multidimensional-array


【解决方案1】:

您发布的内容在我看来非常接近完美。我能发现的唯一问题是该行中的类型不匹配:

pQM = &(ScalingList[0][0][0]);

所写的 rhs 是 unsigned char * 类型。

试试吧:

pQM = ScalingList;

第一个维度将衰减为指向第一个元素的指针 - 一个大小正确的二维数组。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-10-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-11
    • 1970-01-01
    相关资源
    最近更新 更多