Except when it is the operand of the sizeof or unary & operator, or is a string literal being used to initialize another array in a declaration, an expression of type N-element array of T will be replaced with (decay to) an expression of type pointer to T, and the value of the expression will be the address of the first element.