Pointer
*: Pointer
Array
[]: Array
연산자 우선 순위
C언어 코딩도장 25.0 연산자 우선순위 알아보기[] -> * 순으로 우선 순위가 높으므로 (여기서 ()는 우선 처리의 의미)int *arr[4]: 배열int (*arr)[4]: 포인터
라고 정리 할 수 있다.
Pointer Variable
모든 Pointer 변수는 크기가 4 Byte이다 = 주소값은 항상 4 Byte 크기
예시
char *p: Pointer to charint *p: Pointer to intint (*p)[4]: Pointer to Array(4 int)int *p[4]: Array of Pointer(4 int*)
복잡한 예시
| name | type | target |
int *p | p | int * | int |
int (*p)[4] | p | int (*)[4] | int[4] |
int *(*p)[4] | p | int *(*)[4] | int *[4] |
int (*p[2])[4] | p[0], p[1] | int (*)[4] | int[4] |



Pointer Reference(참조)
int *p일때변수 p: Pointer p변수 *p: Pointer p가 참조하는(지시하는) 대상