2013-08-29から1日間の記事一覧

2次元配列を関数に渡すとき

仮引数はどう書けばいいでしょうか? void piyo( int ? ) { hoge[3][2] = 1; } int main(void) { int hoge[4][3]; piyo(hoge); ... } 正解 (*hoge)[3] hoge[ ][3] hoge[4][3] この3つが正解で、どれも等価。つまり「(サイズ3の配列)へのポインタ」という意…

ダブルポインタ

C言語のダブルポインタについておさらい。 // ありがちなミス int gHoge; // hogeにgHogeをセットする void setHoge(int *hoge) { // 仮引数(ローカル変数)hogeの参照がセットされるだけ hoge = &gHoge; } int main(void) { int *hoge = NULL; setHoge(hoge)…