Оператор индекса []
связывает сильнее, чем оператор разыменования *
.
int *poi[2]
означает:
Если вы видите poi , примените [x]
, затем разыменяем результат через *
, и вы получите int
.Таким образом, это массив из 2 указателей на int.
В
int (*poi)[2]
парантезы заставляют *
быть примененным первым.Таким образом, в любое время используется poi , если сначала применить *
, а затем [x]
, вы получите int
.Так что это указатель на массив 2 int
.