[解決済み] C++の関数に2次元配列を渡す
2022-03-25 16:23:36
質問
パラメータとして可変長の2次元配列を受け取る関数があります。
今のところ、こんな感じです。
void myFunction(double** myArray){
myArray[x][y] = 5;
etc...
}
そして、コードの別の場所で配列を宣言しています。
double anArray[10][10];
しかし
myFunction(anArray)
がエラーになります。
配列を渡すときにコピーしたくないのです。で行った変更は
myFunction
の状態を変更する必要があります。
anArray
. 私の理解が正しければ、私は2次元配列へのポインタを引数として渡したいだけなのです。この関数は、異なるサイズの配列も受け入れる必要があります。だから、例えば。
[10][10]
と
[5][5]
. どうすればいいのでしょうか?
どのように解決するのですか?
2次元配列を関数に渡すには、3つの方法があります。
-
パラメータが2次元配列の場合
int array[10][10]; void passFunc(int a[][10]) { // ... } passFunc(array);
-
パラメータはポインタを含む配列である
int *array[10]; for(int i = 0; i < 10; i++) array[i] = new int[10]; void passFunc(int *a[10]) //Array containing pointers { // ... } passFunc(array);
-
パラメータは、ポインタの
int **array; array = new int *[10]; for(int i = 0; i <10; i++) array[i] = new int[10]; void passFunc(int **a) { // ... } passFunc(array);
関連
-
[解決済み】 unsigned int vs. size_t
-
[解決済み】浮動小数点例外エラーが発生する: 8
-
[解決済み】指定範囲内の乱数で配列を埋める(C++)
-
[解決済み] 警告:暗黙の定数変換でのオーバーフロー
-
[解決済み] 配列から特定の項目を削除するにはどうすればよいですか?
-
[解決済み] JavaScript で配列に値が含まれているかどうかを確認するにはどうすればよいですか?
-
[解決済み] 配列からArrayListを作成する
-
[解決済み] 配列に特定のインデックスで項目を挿入する方法 (JavaScript)
-
[解決済み】オブジェクトの配列を文字列のプロパティ値でソートする
-
[解決済み】配列に何かを追加する方法は?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Visual Studio 2015で「非標準の構文。'&'を使用してメンバーへのポインターを作成します」エラー
-
[解決済み】C++エラーです。"配列は中括弧で囲まれたイニシャライザーで初期化する必要がある"
-
[解決済み】文字列関数で'char const*'のインスタンスを投げた後に呼び出されるterminate [閉店].
-
[解決済み】C++エラー:の初期化に一致するコンストラクタがありません。
-
[解決済み】「std::operator」で「operator<<」にマッチするものがない。
-
[解決済み】オブジェクト引数のない非静的メンバ関数の呼び出し コンパイラーエラー
-
[解決済み】クラステンプレートの使用にはテンプレート引数リストが必要です
-
[解決済み】1つ以上の多重定義されたシンボルが見つかる
-
[解決済み】C++ - 適切なデフォルトコンストラクタがない [重複]。
-
[解決済み】'std::cout'への未定義の参照