【发布时间】:2011-01-12 21:39:44
【问题描述】:
对于 4-D 数组,我尝试使用紧凑指针表示法对值进行平均。使用我的文本中的示例,它说我可以使用这样的东西:
void DisplayAverage(double (*set)[DIM1][DIM2][DIM3])
double *ptr;
double subTotal2 = 0;
for (ptr = (double *)set; ptr < (double *)set + DIM0 * DIM1 * DIM2 * DIM3; ptr++) {
subTotal2 += *ptr;
subTotal2 /= (DIM0 * DIM1 * DIM2 * DIM3);
cout << "Using compact pointer operations, total: " << subTotal2 << "\n";
}
}
该代码有效。但是,如果我尝试使用文本中的另一种表示法:
for (ptr = (double *)set; ptr < (double *)(&set + 1); ptr++) {
要访问数组,我没有得到任何输出。有什么想法吗?谢谢。
【问题讨论】:
-
用附加的编程语言“C++”重新标记 - 它看起来确实像 C++,如果不是,请更正。