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

+ Recent posts