0
1D固定配列を2Dポインタ関数に渡す方法はありますか?私は1Dポインタ配列を渡すことが分かります。1D固定配列を2Dポインタ関数に渡す
void prettyPrintMatrix_float(float **matrix, int rows, int cols){
int i, j;
for (i = 0; i<rows; i++){
for (j = 0; j<cols; j++){
printf("%10.3f", matrix[i][j]);
}
printf("\n");
}
return;
}
float myArray[10] = {0.0f};
float* myPointerArray = (float*)malloc(sizeof(float) * 10);
prettyPrintMatrix_float(&myPointerArray, 1, 10); // Works
prettyPrintMatrix_float(&myArray, 1, 10); // ERROR
prettyPrintMatrix_float(&(myArray[0]), 1 , 10); ERROR
私はこれを回避する方法について考えることはできません。私が考えることができるのは、新しい機能を作り出すことだけです。私はむしろそうではない場合、私はむしろそうしたいと思います。
'float * myPointerArray = myArray; prettyPrintMatrix_float(&myPointerArray、1,10); '? @EugeneSh。 –
私は今あなたにキスすることができます。あなたはうその犬。あなたが甘いカルマをしたいなら、答えとしてそれを書いてください。 – user14492
代わりに2D配列を使用できない理由はありますか? https://stackoverflow.com/questions/42094465/correctly-allocating-multi-dimensional-arrays – Lundin