Increment operator is not invoked at sizeof(++n) expression [duplicate]

In C++, the expressions inside sizeof is not evaluated, except for C99’s VLA as mentioned in comments, since this was earlier tagged for C too

The sizeof operator is calculated at compile time.

Only the type of the expression (that is calculated at compile time) is then used by sizeof.

From C++ Standard ยง 5.3.3 Sizeof

The sizeof operator yields the number of bytes in the object
representation of its operand. The operand is either an expression,
which is an unevaluated operand (Clause 5), or a parenthesized
type-id.

Some C++ compilers provide VLAs as an extension as commented below.

Leave a Comment

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)