728x90
 

{
 int a[3][2]= { {1,2},{3,4},{5,6}};
 int *ptr;
 int i;

 ptr=a[0];
 for(i=0;i<6;i++)
  printf("*(ptr+%d)= %d\n",i,*(ptr+i));
 getch();
}



결과값:

*(ptr+0)=1

*(ptr+1)=2

*(ptr+2)=3

*(ptr+3)=4

*(ptr+4)=5

*(ptr+5)=6


오늘 학교에서 배운 내용입니다..


오늘 처음 들어간 포인터 문인데... 포인터 문을 제대로 이해 안하면


나중에 난해 하다고 하시길래 이왕 할거 제대로 하고 싶어 이렇게 질문을 남깁니다..


 


int a[3][2]= { {1,2},{3,4},{5,6}};


여기서 a[3][2] 는 배열문으로 3행 2열의 정수 배열이라고 하시더군요..


그러면 { {1,2},{3,4},{5,6}}; 여기서 행은 뭐고 열은 또 먼가요..??


또한 제가 a[3][3] 이렇게 고쳐 보니

*(ptr+0)=1

*(ptr+1)=2

*(ptr+2)=0

*(ptr+3)=3

*(ptr+4)=4

*(ptr+5)=0


이렇게 나옵니다... 죄송하지만 이게 왜 이렇게 되는지 자세히 설명해주세요..^^;;


728x90

+ Recent posts