C에서 구조체로 연산을 하는 코딩인데 뭐가 틀렸나요??
조회수 1473회
#include<stdio.h>
typedef struct
{
int xpos;
int ypos;
}Point;
void Swap(Point pos1,Point pos2)
{
int imsix;
imsix=pos1.xpos;
pos1.xpos=pos2.xpos;
pos2.xpos=imsix;
int imsiy;
moon=pos1.ypos;
pos1.ypos=pos2.ypos;
pos2.ypos=imsiy;
}
int main(void)
{
Point pos1,pos2;
printf("두 개의 좌표를 입력하시오.\n");
scanf("%d %d",&pos1.xpos,&pos1.ypos);
printf("\n");
scanf("%d %d",&pos2.xpos,&pos2.ypos);
printf("첫번째 좌표:[%d,%d]",pos1.xpos,pos1.ypos);
printf("두번째 좌표:[%d,%d]",pos2.xpos,pos2.ypos);
Swap(pos1,pos2);
printf("첫번째 좌표:[%d,%d]",pos1.xpos,pos1.ypos);
printf("두번째 좌표:[%d,%d]",pos2.xpos,pos2.ypos);
return 0;
}
오류메시지: 1>c:\users\samsung\documents\visual studio 2010\projects\programming\programming\roundarith.c(227): error C2143: 구문 오류 : ';'이(가) '형식' 앞에 없습니다. 1>c:\users\samsung\documents\visual studio 2010\projects\programming\programming\roundarith.c(228): error C2065: 'imsiy' : 선언되지 않은 식별자입니다. 1>c:\users\samsung\documents\visual studio 2010\projects\programming\programming\roundarith.c(230): error C2065: 'imsiy' : 선언되지 않은 식별자입니다.
c를 시작한지 3주된 학생입니다. 위 코딩에서 어디가 잘못되었는지 가르쳐주시면 감사하겠습니다.
-
(•́ ✖ •̀)
알 수 없는 사용자 - 〉
1 답변
-
moon=pos1.ypos;
코드에 moon은 무슨용도의 변수인가요?
사용하는 건가요?
- moon 변수만 처리하면 오류는 없어보입니다. 그러나 swap 함수는 기대한대로 동작안할겁니다. 정영훈 2018.2.23 17:04
- moon은 제가 스스로 고치려고 시도하면서 생긴 오류인거 같네요. 변수를 다시 고쳐봐도 말씀하신것처럼 swap함수가 작동이 안되던데 이유좀 알 수 있을까요? 알 수 없는 사용자 2018.2.23 17:15
- 포인터를 학습해야 가능합니다. 함수를 호출할때 stack 이라는 메모리 공간을 사용한다는 것도 인지를 해야합니다. 정영훈 2018.2.23 17:18
댓글 입력