研修でもやったのでポインタあたりの扱い方をメモ
配列表記とポインタ表記
"関数の仮引数内において"、下記の表記は等価である。
void func(int* arg); void func(int arg[]);
void func2(int** arg); void func2(int* arg[]); void func2(int arg[][]);
配列とデータの受け渡し
二次元配列を関数に渡すとき
int a[3][4]; func3(a); void func3(int a[][4]){・・・} //**aではない void func3(int a[]){・・・} //これでもいける
ポインタの配列を関数に渡すとき
char *p[] = {"test", "hoge", "fuga"}; func4(p); void func4(int **p){・・・}
2次元配列の話はこちらも参照