2011-09-08 12 views

答えて

10

arrは、int*と評価される式です(これは有名な「配列の減衰からポインタへ」の偉業ですure)。

&arrは、int (*)[3]と評価される式です。

sizeofまたは&演算子のオペランドを除いて、すべての式の配列の最初の要素を指す配列名は 'decay'です。これら2つの操作では、配列名は配列のままです(C99 6.3.2.1/3「Lvalues、配列、および関数指定子」)。

+1

1:私はまた、異なるタイプのが、両方の式が同じポインタアドレスを返す、と指摘します。 –

0

それはまったく同じ理由で動作しません:

int i; 
int* pi = i; // error: no conversion from int to int* 
関連する問題