return 부분이 뭘 의미하는 건지 모르겠어요
빵순
2023.04.01
#include stdio.h
typedef struct rect {
int x1, y1;
int x2, y2;
} RECT;
int GetArea(const RECT *pRect);
int main(void)
{
RECT r1 = {10, 10, 40, 50};
printf(직사각형의 면적 : %d\n, GetArea(&r1));
getchar;
return 0;
}
int GetArea(const RECT *pRect)
{
return (pRect-x2-pRect-x1)*(pRect-y2-pRect-y1);
}
붉은색 글 부분을 왜 저렇게 써야 하는지 이해가 잘 안돼요ㅠㅠ 설명해주세요
-
댓걸
(pRect-x2-pRect-x1)*(pRect-y2-pRect-y1)
(40 - 10 )* (50 - 10)이네요 30 곱하기 40이니까 결과는 120입니다.
r1 = { x1, y1, x2, y2} 이니까 빨간줄에 x2이면 40 x1이면 10 y2이면 50 y1이면 10입니다.
그리고 앞에 return 있으니까 결과값인 120을 넘겨주는거에요. -
화이트캣
구조체이를 포인터로 받았고요.
구조체의 요소에 간접접근 연산자 - 를 썻습니다.
함수의 기능이 사각형의 넓이를 구하는 것으로 보입니다. -
개미
어디까지 이해되는데요?