0

2D 配列を指すポインターを作成しようとしています。ここで質問を見ましたA pointer to 2d arrayですが、提供されたソリューションでは、コンパイル時に次のエラーが発生します。

「エラー: 'int ( )[(((sizetype)(((ssizetype)n) + -1)) + 1)]' を 'int [(((sizetype)(((ssizetype)n) ) + -1)) + 1)]'"

コードは次のとおりです。

int multTable( int n ){
  int a = 10;
  int table[a][n];
  int *(tablepb)[n];
  tablepb = &(table[a-1]);
}

tablepb が table の配列の最初のセットの最後の配列を指すようにするにはどうすればよいですか?

4

1 に答える 1

0

実行時サイズの配列の非標準的な使用にもかかわらず、単純な int ポインターを使用して、 operator のアドレスを必要とせずに、目的を達成できます&

int multTable( int n ){
  int a = 10;
  int table[a][n];
  int *tablepb = table[a-1];
}
于 2013-09-25T02:50:25.913 に答える