Нет ли синтаксической ошибки в записи &(23[array]) в коде? Почему?
int array[33];
if(&array[4] < &(23[array]))
{
cout << "А";
} else {
cout << "B";
}
Источник: Stack Overflow на русском
int array[33];
if(&array[4] < &(23[array]))
{
cout << "А";
} else {
cout << "B";
}
Записи a[b]
и b[a]
эквивалентны, поскольку, в силу правил арифметики указателей,
a[b] == *(a + b) == *(b + a) == b[a]