2次元配列を引数として渡すには? – プログラミング – Home

2次元配列を引数として渡すには?
 
通知
すべてクリア

[解決済] 2次元配列を引数として渡すには?


midori
 midori
(@midori)
ゲスト
結合: 24年前
投稿: 2
Topic starter  

初心者です。宜しくお願いします。
CHAR型の二次元配列があるのですが、どうしたら引数として
ほかのルーチンへ渡せるのでしょうか?
よろしくおねがいします。


引用未解決
トピックタグ
ten_bun
 ten_bun
(@ten_bun)
ゲスト
結合: 24年前
投稿: 19
 

例えば次のような2次元配列を定義した場合
char out_DoubleDim[a][b];

VC++環境ならば
以下の関数に
Test_000((char*)&out_DoubleDim,a,b);
と渡してやれば良いでしょう。

void
Test_000(char* out_lp,int FirstDim,int SecondDim){
  /*
          ~処理~
*/
  //表示 
  for(int i=0;i<FirstDim;i++) printf(%s\n,&out_lp[i*SecondDim]);
  return;
}

他の環境なら私の場合
char out_DoubleDim[a][b];
char* out_lpString[a];//をあらかじめ確保しておき

for(int i = 0;i<a;i++){
out_lpString[i] = out_DoubleDim[i];
}//とアドレスをコピーして
以下の関数に
Test_001(&out_lpString[0],a);
と渡してやります

void
Test_001(char**out_lpp,int FirstDim){
   /*
          ~処理~
*/
//表示
  for(int i=0;i<FirstDim;i++) printf(%s\n,out_lpp[i]);
return;
}


返信引用
midori
 midori
(@midori)
ゲスト
結合: 24年前
投稿: 2
Topic starter  

ten_bunさん

一次配列に二次配列を代入して
一次配列として別ルーチンに渡すことにしました。

ごていねいにご返事頂き
ありがとうございました。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました