기본적으로 포인터 크기가 32비트, 64비트 라는 차이점이 있다.
Polymorphic 자료형
#if defined(_WIN64)
typedef __int64 LONG_PTR;
typedef unsigned __int64 ULONG_PTR;
typedef __int64 INT_PTR;
typedef unsigned __int64 UINT_PTR;
#else
typedef long LONG_PTR;
typedef unsigned long ULONG_PTR;
typedef int INT_PTR;
typedef unsigned int UINT_PTR;
#endif
여기서의 PTR은 포인터 형을 의미하는 것이 아니라, 포인터 연산을 위해 정의 되었다는 의미이다.
오류의 확인
GetLastError 함수
- 오류가 발생할 때 마다 전역 공간에 오류 코드가 저장된다.
- 전역 공간에 저장된 오류 코드를 GetLastError 함수를 이용해서 얻어온다.
- 오류의 발생여부를 확인하는 함수가 아니라, 오류가 발생했을 때 어떤 오류가 발생했는지 알기 위한 함수이다.
- 시스템 함수를 호출하고 나서 다른 시스템 함수를 호출 하기 전에 GetLastError 함수를 호출 해야 한다.
(전역공간을 공유 하기 때문에 그런듯?)
'뇌를 자극하는 윈도우즈 시스템 프로그래밍 > 개념' 카테고리의 다른 글
프로세스와 스케줄러의 이해 (0) | 2019.03.18 |
---|---|
Direct 모드와 Indirect 모드 (0) | 2019.03.18 |
MBCS와 WBCS의 동시 지원 (0) | 2019.03.18 |
Windows에서의 유니코드, 아스키코드, MBCS (0) | 2019.03.12 |
클럭 신호 (0) | 2019.03.12 |