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

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


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

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


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

pQM[i][j][k]


我知道我需要适当地组合(),*和&,但是我无法获得它。有人可以帮帮我..

最佳答案

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

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


所写的rhs类型为unsigned char *。

请尝试:

pQM = ScalingList;


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

07-28 03:59