728x90
● Example
int ary[5];
sizeof(ary) == 20바이트 (배열 전체의 크기 계산)
ary == 100 이라면
ary + 1 == 104
sizeof(&ary) == 4바이트
&ary == 100 이라면
&ary + 1 == 120
int ary[3][4];
sizeof(ary) : 배열 전체의 크기, 48바이트
sizeof(&ary[0]) : 주소의 크기, 4바이트
sizeof(&ary[0][0]) : 주소의 크기, 4바이트
sizeof(ary[0]) : 부분 배열 전체의 크기, 16바이트
1) &ary : 2차원 배열 전체의 주소
2) ary : 첫번째 부분 배열의 주소
3) &ary[0] : 첫번째 부분 배열의 주소
4) ary[0] : 첫번째 부분 배열의 첫번째 배열 요소의 주소
5) &ary[0][0] : 첫번째 부분 배열의 첫번째 배열 요소의 주소
2) == 3)
4) == 5)
하지만 2)와 4)는 배열로서 주소의 기능과 변수의 기능도 한다.
3), 5)는 단지 주소
728x90
'C 메모' 카테고리의 다른 글
void 포인터 (0) | 2020.03.07 |
---|---|
함수 포인터 (0) | 2020.03.07 |
포인터 배열의 주소 (0) | 2020.03.06 |
배열포인터와 포인터배열 (2) (0) | 2020.03.03 |
배열포인터와 포인터배열 (1) (0) | 2020.03.03 |