• 카테고리

    질문 & 답변
  • 세부 분야

    시스템

  • 해결 여부

    미해결

return 과 exit 차이를 알고 싶습니다.

21.11.04 19:18 작성 조회수 2.61k

1

안녕하세요

 

프로그램에서 return 0 , return -1 해도 되고, 

exit 0, exit -1 이런식으로도 사용하는데 ...

 

둘의 차이를 알고 싶습니다.

답변 1

답변을 작성해보세요.

1

안녕하세요. yong ho님.

return과 exit은 완전히 다른 기능을 하지만 동일한 기능을 수행할 떄도 있습니다. 그래서 질문 주신 것 같네요:)

return은 함수를 종료하는 키워드입니다. 어떤 함수에서든 return 키워드를 사용하면 해당 함수를 종료하고, 함수를 호출한 곳으로 jump하게 됩니다. 그런데 main() 함수에서 return 키워드를 사용하면 어디로 가죠? main() 함수는 어떤 함수에서 호출한 것이 아니라, 프로그램이 실행되면서 처음 실행되는 함수입니다. 그래서 main() 함수에서 return을 하면 프로그램을 종료하게 됩니다.

반면 exit() 함수는 프로그램을 종료하는 함수입니다. 이 함수를 호출하면, 호출한 위치에 관계없이 프로그램이 종료됩니다. 

정리하면, main 함수 내에서는 return이나 exit가 같은 기능을 합니다. 하지만 main 함수가 아닌 다른 함수 내에서는 완전히 다르게(return: 함수 종료, exit(): 프로그램 종료) 동작합니다. 이 둘의 차이를 반드시 알고 넘어가셔야겠습니다. 

추가 질문 있으시면 댓글로 남겨주세요! :D

smile2000님의 프로필

smile2000

질문자

2021.11.11

감사합니다^^