大家好,我遇到了函数返回元素的问题。我需要返回指针“double **”的双指针。但是我得到了一个双[] []矩阵。
以下是代码:
double** createPalette(int r, int g, int b) {
double incR = 1 / r, incG = 1 / g, incB = 1 / b;
double Cp[r * g * b][3];
for (int i = 0; i < r; i++) {
for (int j = 0; j < g; j++) {
for (int k = 0; k < b; k++) {
Cp[i * r + j * g + k][0] = incR * i;
Cp[i * r + j * g + k][1] = incG * j;
Cp[i * r + j * g + k][2] = incB * k;
}
}
}
return Cp; //return &cp... (?)
}
我在互联网上寻找,但我只发现了简单的指针,没有指针的指针。我该怎么办? 谢谢大家。
答案 0 :(得分:2)
我想你知道r,g,b
的价值,所以你可以得到矩阵的大小,你可以这样做
void createPalette(int r, int g, int b, double matrix[][3])