나는 암시 적으로) 종료 (호출하는 경우 :C에서 exit()를 호출 한 후 프로세스에서 어떤 종류의 정리가 발생합니까?
int main(){
return 0; /*exit(0) is being called */
}
으로 또는 명시 적으로 :가 호출되고() 종료 :
int main(){
exit(0);
return 0; /* this is never reached */
}
최종 점은 동일합니다. 이제 일부 소스에 따르면 exit()을 사용하면 프로세스를 일부 클린업으로 변경하고 운영 체제로 다시 되돌려 보낼 수 있습니다.
궁극적으로 커널 (OS)이 모든 리소스를 릴리스 할 것이라는 것을 알고 있습니다. 커널을 제어하기 전에 프로세스를 정리하는 것이 특별한 이유는 무엇입니까? 무엇이 excactly이 정리? 왜 그것이 필요한가? 프로세스가 어떻게 알 수 있습니까 정리?
'void main()'이란 무엇입니까? 그건 표준 C가 아니기 때문에 당신의 질문을 대답하기가 어렵게 만듭니다. –
@CodyGray 반환 값을 수정했습니다. – unwind