예외 처리(2)
-
POCU C언어 정주행 13회차 - 예외 처리, 나쁜 오류 처리, 오류 처리 전략
1. 예외 처리 C를 배운 사람은 아마 다음과 같은 사실을 알고 있을 것이다. "C는 예외 처리를 위한 기능이 없다." 다른 언어는 예외 처리가 있지만 C는 이런 것들을 지원하는 기능이 없기 때문에 C로 짜여진 프로그램은 안정적이지 못할 것이라고 생각할 수 있다. 하지만 이 강의는 운영체제를 예시로 들면서 "예외가 없다고 해서 프로그램이 안정적이지 못한 것은 아니다. 운영체제는 C로 짜여져 있지만 운영체제만큼 안정적인 프로그램을 찾기는 힘들지 않는가?" 라고 이야기 한다. 그러면서 다음과 같은 이야기도 했다. "예외 처리를 자동으로 해주는 기능은 오히려 프로그래머를 게으르게 만들 수 있다." 사실 이런 부분을 포함해서 오류를 처리하는 부분의 전반적인 내용에서 인문학적인 내용을 포함하고 있다. 그래서 훌륭..
2022.12.30 -
POCU C언어 정주행 9회차 - 파일 입출력, 예외 처리, 스트림 위치
1. 파일 입출력 파일을 읽고 쓰는 것에 대한 입출력 스트림은 지난 글에서 봤던 표준 입출력 스트림의 방식과 동일하다. 사용자의 요청으로 별도의 파일을 읽고 쓰기 위한 스트림이 만들어지고 없어진다는 것만 제외하면 말이다. 다만 파일을 읽고 쓸 때는 일반적으로 이전 글과는 다르게 텍스트 형식이 아니라 바이너리 형식으로 데이터를 읽고 쓴다. 다만 주의할 것이 있는데 같은 형식의 데이터라고 해도 크기가 시스템마다 다를 수 있어서 파일에 저장할 데이터의 크기를 고정해두는 것이 좋다. 어떤 시스템에서 만들어진 파일을 다른 시스템의 실행 파일에서 사용할 때 문제가 생길 수 있기 때문이다. 그럼 바이너리 데이터를 읽고 쓰는 함수와 파일을 열고 닫는 함수를 알아보자. /* 데이터를 몇 번 읽었는지 반환 */ size_..
2022.12.16