• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

int main(void)는 return 값이 필요한가요?

18.11.05 21:34 작성 조회수 1.74k

0

include

int main(void){

printf("Hello World");

return 0;

}

이렇게 되어있을때 int main(){ ~return 0;} 은 많이 봤는데 int main(void){ ~return 0;}은 처음 봐서여... void가 적힌 이유가 있을까요? 그리고 원래 void가 적혀있으면 return 이 필요없지않나요???

답변 1

답변을 작성해보세요.

0

안녕하세요 나도코딩입니다. void 가 전달값 위치에 적힌다는 것은 \"전달값을 받지 않겠어\" 라는 의미가 됩니다. 그 부분이 비어있다면 \"전달값을 받을수도 있겠지?\" 라고 보시면 돼요. 그래서 아래 링크 예제를 보면 전달값을 void 라고 명시한 foo 함수는 전달값을 넘길때 오류가 나지만 전달값을 비워둔 함수는 오류가 나지 않아요

https://www.geeksforgeeks.org/difference-int-main-int-mainvoid/

하지만 우리가 공부하는 입장에서는 둘의 사용이 크게 차이가 없습니다. return 은 함수의 시작부분과 관련이 있습니다. int main(void) 라고 하면 시작인 int 부분이지요, 이는 함수가 끝나고 나서 int 형 자료를 반환하겠다는 의미입니다. 그래서 return 0; 을 씁니다.

보다 자세한 설명은 나중에 \"함수\" 부분에서 만나요!