例えば、以下のようなコードがあります。
int array1[6] = { 0, 1, 2, 3, 4, 5 };
int array2[3][2] = { {0, 1}, {2, 3}, {4, 5} };
void func( int array[][2] ){
for( int i=0; i<3; ++i )
printf( "%d,%d\n", array[i][0], array[i][1] );
}
int main(){
//func( array1 );
func( array2 );
return 0;
}
しかし、array1とarray2はメモリ上では同じように確保されているはずであり、ならばキャストすれば上手く関数に渡せると思うのです。
これで意図が上手く説明出来ているか自信がないのですが・・・
解決法をご存知の方、どうかご教示願います。