c언어 질문???
다참
2023.04.01
포인터와 2차원 배열에서 답이 아래와 같이 나와야 하는데 왜 실해이 안되는지 줌 확인줌 해주세여???
#include stdio.h
void main()
{
int*ptr, a[2][3]={{10,20,30},{40,50,60}};
ptr = a;
printf(%d, %p\n,*ptr,ptr);
ptr = a[0];
printf(%d, %p\n,*ptr,ptr);
ptr = a[1];
printf(%d,%p\n,*ptr,ptr);
}
답 : 10, 0012FF64
10, 0012FF64
40, 0012FF70
이렇게 나와야 되는데 안나와서 그러는데 뭐가 틀렸는지줌 봐주세여........
-
뿡뿡몬
ptr은 int 포인터이기 때문에 a를 가리킬 수 없습니다.
ptr = (int *)a;로 해야 됩니다.
앞의 숫자인 10, 10, 40은 어느 컴퓨터에서나 똑같이 나와야 맞습니다.
그러나 뒤에 있는 각각의 주소는 컴퓨터마다 다르게 나옵니다.