#include <stdio.h>
typedef struct {
int x;
int y;
}Point;
typedef struct {
int rad;
Point* cen;
}Circle;
void main(void) {
Point pos = { 3,4 };
Circle D = { 10,&pos };
Circle* pD = &D;
printf("res1:%d\n", pD[0]);
printf("res3:%d\n", ); //4
printf("res3:%d\n", );//4
printf("res3:%d\n", );//4
}
맨 마지막 3줄에
//4 되어있는 부분에 4가 출력되게 해야하는데...
포인터 pD가 D의 주소를 가리키고 있고 이게 D[0]을 말하는거니까 pD[0]으로 10은 출력되게 했는데,
어떻게 4를 출력되게 하죠? D 배열의 두번째 원소가 pos의 주소고 이게 pos[0]인건 알겠는데, 그래서 4를 다음원소로 출력시키려하니 안되더라구요
pD가 D를 가리키고 그 안에서 D가 pos의 배열주소를 가리키고 그 다음에 y까지 찾아가야 4가 뜨는거같은데
이걸 어떻게 표현하는지를 도저히 모르겠습니다
한 번 가르쳐주시면 깨달음을 얻을거같은데 도움 좀 부탁드리겠습니다
*pD->cen.x - dc Cpp
아 c언어인데 그 문법이되나요 ??
해보겠습니다!!
다른언어 문법이라도 들고왔다는 소린가 - dc Cpp
근데 cen->x겠네 - dc Cpp
저 근데 마지막 세줄 앞에 %d를 유지한채로 해야해서, 포인터로 입력은 안 맞네요...
새로 댓글단거 수정해보면 될텐데 - dc Cpp
아아 감사요 제가 문법얘기한건 -> 이거 C++에만 있는건줄알았어요 ㅠ
저 혹시, 근데 나머지 2개도 4를 나타내야하는데 다 포인터로 나타낼 수 있는건가요??
pD->cen->y
네 그거로 하니까 되더라고요 위엣분이 알려주셔서 그렇게했어요
x는 3이고 y는 4니까 y로 뽑아라
네 근데 혹시, pD로 표현할 다른 방법이 있나요? 처음에 그렇게 가리키는건 알았는데 문법만 몰라서 질문드린거였는데 pD로 다른 2가지 방법으로 표현해야하거든요..