c언어 : Point GetCurrentPosition(void) 이런 함수정의에서 Point 가 붙은 이유는?

조회수 724회
typedef struct Point
{
    int xpos;
    int ypos;
} Point;

void ShowPosition(Point pos)
{
    printf("[%d, %d] \n", pos.xpos, pos.ypos);
}

Point GetCurrentPosition(void)
{
    Point cen;
    printf("Input current pos: ");
    scanf("%d %d", &cen.xpos, &cen.ypos);
    return cen;
}

int main(void)
{
    Point cur_pos = GetCurrentPosition();
    ShowPosition(cur_pos);
}

궁금한게 있는데요. GetCurrent Position 함수에다 왜 Point가 붙나요??

Point GetCurrentPosition(void)  // Point가 왜 붙나요?

1 답변

  • 좋아요

    1

    싫어요
    채택 취소하기

    Point GetCurrentPosition(void)에서 앞에 붙은 Point는 함수의 반환 형식을 나타냅니다.

    일반적으로 함수는 함수 내부에서 어떤 처리를 한 다음에 특정 결과를 함수를 호출한 곳으로 반환합니다. 함수 앞에 붙은 것이 반환하는 값의 타입(반환 형식)입니다.

    예를 들어, int add(int a, int b)와 같은 함수는 a와 b를 더한 결과를 반환할 텐데, 이 때 반환값의 타입(반환 형식)이 int형이란 것을 나타냅니다.

    따라서 Point GetCurrentPosition(void) 함수는 현재 위치(Current Position)를 입력 받아(Get) 반환해 주는 함수이고, 이때 반환 형식이 Point형입니다.

    읽고 계신 C언어 책의 함수 챕터에 잘 설명이 되어 있을 거에요.

    • (•́ ✖ •̀)
      알 수 없는 사용자
    • 아하!! 고맙습니다! HelloWorld 2020.11.27 18:29

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)