2014-02-05 4 views
1

Сегодня, когда я был кодирования в моей визуальной студии я случайно сделал следующееиндексирование массива неправильно в C++

for(int i=0;i<10;i++) 
{ 
    cout<<"Value is"<<[i]arr<<endl; 
} 

вместо обр [я] и worked.why он работал?

+2

Потому что это совершенно действительный синтаксис для индексации массива. – meagar

+0

см .: http://stackoverflow.com/questions/5073350/accessing-arrays-by-indexarray-in-c-and-c – Csq

+1

Это не * неверно *, это просто семантически неясно. Ну, глупо, во всяком случае. Это то, о чем говорят собеседники и профессора, и вы получите в обзоре кода. –

ответ

7

Поскольку [i]arr == *(i + arr) == arr[i]

Примечание: + оператор имеет commutative свойству

+0

О, я вижу, что это очень здорово – user3266922

+0

@LightnessRacesinOrbit Моя ошибка, ответ отредактирован. благодаря –

Смежные вопросы