Подтвердить что ты не робот

Порядок операций для разыменования и скобки-ref в C

Если я делаю *ptr[x], это эквивалентно *(ptr[x]) или (*ptr)[x]?

4b9b3361

Ответ 2

В C все операторы постфикса имеют более высокий приоритет, чем префиксные операторы, а префиксные операторы имеют более высокий приоритет, чем операторы infix. Таким образом, его *(ptr[x])

Ответ 3

Использование движения против часовой стрелки для анализа и анализа этого простого примера

1. starting with ptr, work in counter-clockwise until you hit asterisk operator
2. asterisk, in counter-clockwise until you hit subscript operator
3. we arrive here, at subscript operator [x]

Так как [] имеет более высокий приоритет, чем звездочка в соответствии с этим table, это делает его *(ptr[x])