C言語なら、俺に聞け! <11>
■ このスレッドは過去ログ倉庫に格納されています
0742デフォルトの名無しさん
NGNG煽ってるじゃねえよ!
お前! 間違ってるんなら、教えて下さい。
>739
関数で、配列は渡せません。
配列名だけを記述すると、先頭要素へのポインタとなります。ポインタを渡しています。
740も書いているけど、関数の仮引数として[]を記述しても、ポインタの意味です。
foo(int x[]) でも foo(int x[256]) でも foo(int *x) でも同じです。
可読性のためです。厳密には、一次元の配列しか存在しません。
foo(int x[4][10]) と foo(int x[][10]) と foo(int (*x)[10])
どちらも、大きさ10のint型配列へのポインタを仮引数として受け取ります。
foo(int **x) は、int型へのポインタへのポインタを仮引数として受け取ります。
だから、712の問題では func(***a) と書くのは文法的に間違い。
■ このスレッドは過去ログ倉庫に格納されています