[](Array subscripting 연산자) 가 *(indirection)보다 우선순위가 높으므로
int *arr2[3]은 배열이며 int * 타입을 3개 담을 수 있는 배열이고
int (*arr2)[3]은 포인터이며, int[3]타입을 가리킬 수 있는 포인터이다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | #include <stdio.h> int main() { int arr1[] = {10, 20, 30, 40, 50, 60, 70, 80, 90}; int (*arr2)[3] = (int(*)[3])arr1; for(int i=0; i<3; i++) { for(int j=0; j<3; j++) { printf("%d ", arr2[i][j]); } } return 0; } | cs |