프로그램이 성공을 하게 되면 0값을 반환하게 된다. 실패를하게 되면 0보다 큰 수를 반환하게 된다.
논리연산에서는 0값은 거짓, 0이외의 수는 참값이 되는데 왜 실패를 하게될떄 0보다 큰수를 반환하게 될까?
에러로 인하여 프로그램이 실패할시 어떠한 에러로 인하여 프로그램이 종료됬는지 쉽게 알려주기 위함이다.
만약에 에러로인하여 종료가 될시 0으로 통일된 값이 반환될 경우
프로그래머는 어느 부분에서 에러가 발생 했는지 디버깅 하기가 쉽지는 않게된다.
그래서 프로그램이 성공하면 0값을 반환하게 되고 에러로 프로그램이 실패하게 되면 각각에 따른 0을 넘는 숫자가 반환이 된다.
socket 에러 : 1값 반환
connet 에러 : 2값 반환
database 에러 : 3값 반환
알수 없는 에러 : 4값 반환
이렇게 각각에 따른 반환값을 주게 된다.
반드시 이렇게 하는것은 아니지만
이렇게 반환값을 줌으로써 좀더 빠른 디버깅을 할수 있게 될것이다.
이처럼 구현을 할수 있을 것이다.
int re = 특정 함수;
1
2
|
if(!re) { 정상 실행}
else {re출력}
| cs |
이런식으로 구현이 될 것이다 .
댓글
댓글 쓰기