while(i <a_rows * a_cols){out [i] = *(a_mat i); //この行}
2 Answer
12
それは `a_mat i`が指しているものすべての値を取得します。 代わりに `a_mat [i]`と書くこともできます。
3
Cでは、 `x [i]`は `*(xi)`と同じ表現です。なぜなら、ポインタに整数を追加することは、整数をポイントされたオブジェクトのサイズでスケーリングすることによって行われ、 。
これは、その非対称な外観にもかかわらず、Cのインデックス演算子 `[]`が可換であることを意味します。
これの伝統的なデモンストレーションは次のようなものです。
main() { int x[] = { 1, 2, 3, 4 }; printf("%d\n", x[2]); printf("%d\n", 2[x]); }
両方の行は同等で、同じものを表示します。