C 포인터 선언할 때 왜 별표를 타입 뒤가 아니라 이름 앞에 붙이나요?

조회수 1243회

C 포인터 선언할 때 왜 별표를 타입 뒤가 아니라 이름 앞에 붙이나요? 보통 선언하는 것 보니까

int* myVariable; 말고 int *myVariable;같이 쓰던데

둘 다 쓸 수 있는데도 왜 꼭 뒤에것처럼 이름 앞에 별표를 붙이나요?

1 답변

  • 좋아요

    0

    싫어요
    채택 취소하기

    말씀하신 대로 둘 다 사용 가능합니다만, 가독성이나 전달받는 느낌이 달라서 그렇습니다.

    int* myVariable1, myVariable2
    

    는 어떤 느낌이 드시나요? 제 느낌에는 별표가 타입이랑 한 세트 같아서 myVariable2도 포인터 값은 느낌이 드네요.

    하지만 실제로 myVariable2는 그냥 int타입입니다.

    int *myVariable1, myVariable2
    

    이렇게 하면 이제는 myVariable1만 포인터, myVariable2int라고 생각하지요.

    변수를 여러 개 쓰는 상황엔 후자가 더 전달성이 좋기 때문에 보통 변수 이름 앞에 포인터 표시합니다.

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

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

(ಠ_ಠ)
(ಠ‿ಠ)