개발/시스템 프로그래밍

    왜 유니코드를 사용하는 것이 좋은가?

    어플리케이션 개발 시 반드시 유니코드를 사용하기를 권장한다. 그 이유로는 1. 유니코드를 사용하면 다른 나라의 언어로 애플리케이션을 지역화하기가 쉽다. 2. 유니코드는 사용하면 단일의 바이너리(.exe나 DLL) 파일로 모든 언어를 지원할 수 있다. 3. 유니코드를 사용하면 코드가 더 빠르게 수행되며 더 작은 메모리를 사용하기 때문에 애플리케이션의 효율성이 증대된다. 윈도우는 내부적으로 유니코드로 구성된 문자와 문자열을 사용하기 때문에 ANSI 문자나 문자열을 전달할 경우 내부적으로 새로운 메모리를 할당하고 ANSI 문자와 문자열을 유니코드로 변경해야 한다. 4. 유니코드를 사용하면 윈도우가 제공하는 모든 함수를 쉽게 사용할 수 있다. 몇몇 윈도우 함수는 유니코드 문자나 문자열만을 받아들일 수 있도록 작..

    에러 핸들링

    윈도우 함수가 에러를 어떻게 처리하는지에 대해 이해해 봅시다. 윈도우 함수를 호출하면 호출된 함수는 먼저 전달된 인자의 유효성을 확인하고 함수의 기능을 수행하려 합니다. 만일 전달된 인자가 유효하지 않거나 다른 이유로 인해 해당 기능을 수행할 수 없으면 함수는 실패를 반환합니다. 윈도우 함수의 대표적인 반환 자료형 입니다. 자료형 실패했을 때의 값 VOID 이 함수는 절대 실패하지 않습니다. 아주 적은 윈도우 함수만이 void 형의 반환 자료형을 가집니다. BOOL 함수가 실패하면 0을 반환합니다. 성공 시에는 0이 아닌 값을 반환합니다. 반환 값을 TRUE와 비교해서는 안됩니다. HANDLE 함수가 실패하면 반환 값은 대개 NULL 입니다. 성공 시에는 유효한 오브젝트 핸들을 반환합니다. 몇몇 함수들은..