im to Cので、ここで使用する正しい単語ではない可能性があります。ポインタに2d-arrayの最初のポインタを割り当てます。
私はintのポインタへのポインタを返すこのような関数があります。 main()関数で
int **foo(){} //I wouldn't care much what this function does
は、私はこの
int playground[10][10];
playground=foo();
のように配列を定義した。しかし、コンパイラは、このエラーを私に警告し:配列型 遊び場= fooで表現へ
割り当て();
ここで実際に何が間違っていますか?私が知る限り、遊び場は2d配列なので、intのポインタを指すポインタとなります。正確にはどの関数foo()が返ります。
誰かが説明できますか?どうもありがとう!
ちょうどint **の遊び場として遊び場を定義する; foo()の中に2次元配列のためのスペースを割り当てる必要があるかもしれません。 – Shiping
私は知っている限り、 "遊び場"を書くとき、それは実際に配列の最初の要素へのポインタを意味するので、私は、メモリ問題を世話しましたが、なぜ私の方法didntの仕事は、この例では動作しますか? –
プレイグラウンド[10] [10]は2次元配列へのポインタではなく2次元配列ですが、foo()は2次元配列へのポインタを返します。 – Shiping