2014/04

    C에서 예외처리 하기

    모두가 알고 있듯 C에서는 예외처리라는 것이 불가능하다고 알고있다. 예외처리가 C표준이 아니기 때문이다. 하지만 C 코드의 이식성을 무시해도 되는 상황이라면 C에서의 예외처리 방식은 매우 유용한 방법이 될 수 있다. __try{//////}__finally{/////} 이러한 방식을 적용하면 C에서 개발자들이 자주 놓치게 되는 메모리 해제에 대한 문제를 해결할 수 있다. int *ptr = NULL; __try{pi=(int*)malloc(sizeof(int));*pi = 5;}__finally{free(pi)} 위와 같은 방식으로 사용하면 free함수의 실행이 항상 보장된다. 참고문헌 : Understanding and Using C Pointers

});