Ex06-배열 이름은 배열의 시작 주소

CODEDRAGON Development/C, C++

반응형

   

배열 이름은 배열의 시작 주소

int형 배열

메모리 주소값을 %d로도 출력해서 메모리공간차이를 직관적으로 확인해보기   

   

   

메모리 구조

   

   

소스코드

  1. #include <stdio.h>
  2.  
  3. int main(void) {
  4.     int array[5] = {10,20,30, 40, 50};
  5.  
  6. //%x(16진수) 출력
  7. //    printf("%x %x %x %x %x \n",array+0,array+1,array+2,array+3,array+4); //16진수 주소출력, 4 byte 차이
  8. //    printf("%x %x %x %x %x \n",&array[0],&array[1],&array[2],&array[3],&array[4]); //16진수 주소출력, 4 byte 차이
  9.  
  10. //%d(10진수) 출력
  11.     printf("%d %d %d %d %d \n",array+0,array+1,array+2,array+3,array+4); //10진수 주소출력, 4 byte 차이
  12.     printf("%d %d %d %d %d \n",&array[0],&array[1],&array[2],&array[3],&array[4]); //10진수 주소출력, 4 byte 차이
  13.  
  14.     printf("%d %d %d %d %d \n",array[0],array[1],array[2],array[3],array[4]); //배열에 저장된 값출력, 4 byte 차이
  15.  
  16. return 0;
  17. }


 

   

출력결과

%x(16진수)로 출력한 결과

   

   

   

%d로 10진수 주소 출력