Нет ли синтаксической ошибки в записи &(23[array]) в коде? Почему?

int array[33];

if(&array[4] < &(23[array]))
{
    cout << "А";
} else {
    cout << "B";
}

Ответы (1 шт):

Автор решения: Mikhailo

Записи a[b] и b[a] эквивалентны, поскольку, в силу правил арифметики указателей,

a[b] == *(a + b) == *(b + a) == b[a]
→ Ссылка