C에서 프로그램을 종료하거나 할때, exit 나 return 을 쓰지 않습니까? 이때 exit나 return의 코드 값으로 일반적으로 무엇을 넘겨주어야 정상 종료, 비정상 종료 등을 구분하나요?
일반적으로 exit(1)이 정상종료, exit(0)이 비정상 종료 인가요? 아님 사용자 임의대로 인가요?
그리고 return일 때에도 어떻게 하는지가 궁금합니다.
man exit
http://cppreference.com/stdother_details.html#exit
정상일때 0
비정상일때는 0이 아닌 값
return 도 마찬가지라고 나오네요
main 에서의 exit 와 return 은 차이가 없다고 보시면 됩니다.
보통 main 의 리턴값은 0 일 때 성공, 1 일 때 실패로 하는 경우가 보통이고 EXIT_FAILURE, EXIT_SUCCESS 매크로가 stdlib.h 정도에 있을 겁니다.
에러의 종류를 나타내기 위해서 0 이외의 값을 리턴하기도 합니다.
프로세스가 종료될 때의 결과 값을 이것을 가지고 각종 쉘 프로그램을 하니까... 결국 용도에 맞게 리턴하시고 나름대로 사용하시면 되겠습니다.
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
man exit http://cppreference.com/st
man exit
http://cppreference.com/stdother_details.html#exit
정상일때 0
비정상일때는 0이 아닌 값
return 도 마찬가지라고 나오네요
main 에서의 exit 와 return 은 차이가 없다고 보시면 됩니다
main 에서의 exit 와 return 은 차이가 없다고 보시면 됩니다.
보통 main 의 리턴값은 0 일 때 성공, 1 일 때 실패로 하는 경우가 보통이고 EXIT_FAILURE, EXIT_SUCCESS 매크로가 stdlib.h 정도에 있을 겁니다.
에러의 종류를 나타내기 위해서 0 이외의 값을 리턴하기도 합니다.
프로세스가 종료될 때의 결과 값을 이것을 가지고 각종 쉘 프로그램을 하니까... 결국 용도에 맞게 리턴하시고 나름대로 사용하시면 되겠습니다.
댓글 달기