728x90
64비트 기반 프로그래밍
- 자료형에 대해서 고려해야 함
- LLP64, LP64 : 32비트 시스템과의 호환성을 중시한 모델
- 데이터 손실 고려해야 함
#include <stdio.h>
int main()
{
int arr[10] = {0,}; // int* arr;
int arrVal = (int)arr; // 데이터 손실 발생 8Byte -> 4Byte
printf("pointer : %d\n",arrVal);
return 0;
}
- 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
오류의 확인
- GetLastError() : 오류가 발생된 이유를 확인
-> 에러가 발생되면 바로 호출해야 함
-> 에러가 발생하지 않으면 에러가 발생되지 않았다는 값이 저장됨
https://docs.microsoft.com/en-us/windows/win32/debug/system-error-codes
728x90
'Programming > System Programming' 카테고리의 다른 글
윈도우즈 시스템 프로그래밍 - 4. 컴퓨터 구조에 대한 두 번째 이야기(2) (0) | 2020.07.09 |
---|---|
윈도우즈 시스템 프로그래밍 - 4. 컴퓨터 구조에 대한 두 번째 이야기(1) (0) | 2020.07.09 |
윈도우즈 시스템 프로그래밍 - 3. 64비트 기반 프로그래밍(1) (0) | 2020.07.08 |
윈도우즈 시스템 프로그래밍 - 2. 아스키코드 vs 유니코드(2) (0) | 2020.07.08 |
윈도우즈 시스템 프로그래밍 - 2. 아스키코드 vs 유니코드(1) (0) | 2020.07.07 |